Part Number Hot Search : 
SMBJ13CA M9839B SMBJ5936 MMBZ5 LBS17801 MEH14ZAA 58010 MS310
Product Description
Full Text Search
 

To Download TRC103 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 1 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 key features ? modulation: fsk or ook with frequency hop- ping and dts spread spectrum capability ? frequency ranges: 863-870, 902-928 and 950-960 mhz ? high sensitivity: -112 dbm in circuit ? high data rate: up to 200 kb/s ? low receiver current: 3.3 ma typical ? low sleep current: 0.1 a typical ? up to +11 dbm in-circuit transmit power ? operating supply voltage: 2.1 to 3.6 v ? programmable preamble ? programmable packet start pattern ? integrated rf, pll, if and base-band circuitry ? integrated data & clock recovery ? programmable rf output power ? pll lock output ? transmit/receive fifo size programmable up to 64 bytes ? continuous, buffered and packet data modes ? packet address recognition ? packet handling features: ? fixed or variable packet length ? packet filtering ? packet formatting ? standard spi interface ? ttl/cmos compatible i/o pins ? programmable clock output frequency ? low cost 12.8 mhz crystal reference ? integrated rssi ? integrated crystal oscillator ? host processor interrupt pins ? programmable data rate ? external wake-up event inputs ? integrated packet crc error detection ? integrated dc-balanced data scrambling ? integrated manchester encoding/decoding ? interrupt signal mapping function ? support for multiple channels ? four power-saving modes ? low external component count ? small 32-pin qfn plastic package ? standard 13 inch reel, 3k pieces applications ? active rfid tags ? automated meter reading ? home & industrial automation ? security systems ? two-way remote keyless entry ? automobile immobilizers ? sports performance monitoring ? wireless toys ? medical equipment ? low power two-way telemetry systems ? wireless mesh sensor networks ? wireless modules TRC103 863-960 mhz rf transceiver product overview TRC103 is a single chip, multi-channel, low power uhf transceiver. it is designed for low cost, high volume, two-way short range wireless applica- tions in the 863-870, 902-928 an d 950-960 mhz frequency bands. the TRC103 is fcc & etsi certifiable. a ll critical rf and base-band functions are integrated in the TRC103, minimi zing external component count and sim- plifying and speeding design-ins. a microc ontroller, rf saw filter, 12.8 mhz crystal and a few passive components are all that is needed to create a com- plete, robust radio function. the tr c103 incorporates a set of low-power states to reduce overall current co nsumption and extend battery life. the small size and low power consumption of the TRC103 make it ideal for a wide variety of short range radio applications. the TRC103 complies with directive 2002/95/ec (rohs). pb
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 2 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 table of contents 1.0 pin conf iguration ......................................................................................................... ............................ 4 1.1 pin de scription .......................................................................................................... ........................ 4 2.0 functional description .................................................................................................... ......................... 5 2.1 rf port .................................................................................................................. ............................ 7 2.2 transmitter .............................................................................................................. .......................... 7 2.3 receiver ................................................................................................................. ........................... 8 2.4 crystal oscillator ....................................................................................................... ........................ 9 2.5 frequency synthesizer .................................................................................................... ............... 10 2.6 pll loop filter .......................................................................................................... ...................... 10 3.0 operatin g modes ........................................................................................................... ........................ 11 3.1 receiving in continuous mode ............................................................................................. .......... 12 3.2 continuous mode da ta and clock recovery .................................................................................. 13 3.3 continuous mode st art pattern re cognition ................................................................................ .. 14 3.4 rssi ..................................................................................................................... ........................... 14 3.5 receiving in bu ffered data mode .......................................................................................... ......... 15 3.6 transmitting in continuous or buffe red data modes ...................................................................... 1 7 3.7 irq0 and irq1 ma pping..................................................................................................... ............ 17 3.8 buffered cl ock output .................................................................................................... ................. 19 3.9 packet data modes ........................................................................................................ ................. 19 3.9.1 fixed lengt h packet mode .............................................................................................. ...... 19 3.9.2 variable lengt h packet mode ........................................................................................... .... 20 3.9.3 extended variable length packet mode ............................................................................... 20 3.9.4 packet payload processi ng in transmit and receive ........................................................... 22 3.9.5 packet filtering ...................................................................................................... ................ 23 3.9.6 cyclic redundancy check ..................................................................................................... 23 3.9.7 manchester encoding ................................................................................................... ......... 24 3.9.8 dc-bal anced scrambling ................................................................................................ ...... 24 3.10 spi configur ation interface ............................................................................................. .............. 25 3.11 spi data fi fo interface ................................................................................................. .............. 27 4.0 configuration regi ster memory map ......................................................................................... ............ 28 4.1 main configuration registers (mcfg) ............................................................................................ 29 4.2 interrupt configurat ion registers (irqcfg)................................................................................ ... 32 4.3 receiver configurat ion registers (rxcfg) ................................................................................. .. 34 4.4 start pattern configur ation register s (syncfg) ........................................................................... 37 4.5 transmitter configur ation register s (txcfg)............................................................................... . 37 4.6 oscillator configurat ion register (oscfg) ................................................................................ .... 38 4.7 packet handler configur ation registers (pktcfg) ....................................................................... 38 4.8 page configuration register (pgcfg) ........................................................................................... 39 5.0 electrical characteristics ................................................................................................ ....................... 40 5.1 dc electrical characteristics ............................................................................................ .............. 40 5.2 ac electrical characteristics ............................................................................................ ............... 41 6.0 TRC103 desi gn in steps .................................................................................................... ................... 43 6.1 determining frequency specific hardware component values .................................................... 43 6.1.1 saw filters and rela ted component values ....................................................................... 43 6.1.2 voltage controlled osc illator component values ................................................................. 43 6.2 determining configuration values for fsk modulation .................................................................. 44 6.2.1 bit rate related fs k configuratio n values .......................................................................... 44 6.2.2 determining transmitter power configuratio n values .......................................................... 46
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 3 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 6.3 determining configuration values for ook modulat ion ....................................................................... . 47 6.3.1 bit rate related ook configuration va lues ........................................................................ 47 6.3.2 ook demodulator relat ed configuration values ................................................................. 49 6.3.3 ook transmitter relat ed configuration values ................................................................... 50 6.4 frequency synthesizer channel programming fo r fsk modulation .............................................. 51 6.5 frequency synthesizer channel programming fo r ook modulation ............................................. 52 6.6 TRC103 data mode sele ction and config uration ........................................................................... 5 3 6.6.1 continu ous data mode .................................................................................................. ........ 53 6.6.2 buffere d data mode .................................................................................................... .......... 55 6.6.3 packet data mode ...................................................................................................... ........... 57 6.7 battery power management configurati on values ......................................................................... 61 7.0 package dimensions and typica l pcb footprint - qfn-32 ................................................................. 63 8.0 tape and reel dimensions .................................................................................................. ................. 64 9.0 solder refl ow profile ..................................................................................................... ........................ 65
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 4 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 1.0 pin configuration       
                  
                
                                                                        !  "       #  $     $       %      "  %            "   "                         1.1 pin description pin type name description 1 - gnd connect to gnd 2 - gnd connect to gnd 3 o vdd_vco regulated supply for vco 4 i/o tank- vco tank 5 i/o tank+ vco tank 6 i/o pll- pll loop filter output 7 i/o pll+ pll loop filter input 8 - gnd connect to gnd 9 - gnd connect to gnd 10 i xtal- crystal connection (oscillator output) 11 i xtal+ crystal connection (oscillator input) 12 - gnd connect to gnd 13 - nc no connect - float in normal operation 14 i nss_config slave select for spi configuration data 15 i nss_data slave select for spi tx/rx data 16 o sdo serial data out 17 i sdi serial data in 18 i sck serial spi clock in 19 o clkout buffered clock output 20 i/o data transmit/receive data 21 o irq0 interrupt output 22 o irq1/dclk interrupt output/recovered data clock (cont mode) 23 o pll_lock pll locked indicator 24 - gnd connect to gnd 25 - gnd connect to gnd 26 i vdd main 3.3 v supply voltage 27 o vdd_analog regulated supply for analog circuitry 28 o vdd_dig regulated supply for digital circuitry 29 o vdd_pa regulated supply for rf power amp 30 - gnd connect to gnd 31 i/o rf- rf i/o 32 i/o rf+ rf i/o pad - ground ground pad on pkg bottom table 1
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 5 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 2.0 functional description the TRC103 is a single-chip transceiver that can op erate in the 863-870 and 902-928 mhz license-free bands, and in the 950-960 mhz rfid band. the TRC103 supports two modulation schemes - fsk and ook. the TRC103?s highly integrated architecture requires a mini mum of external components, while maintaining design flexibility. all major rf communication parameters ar e programmable and most c an be dynamically set. the TRC103 is optimized for very low power consumption (3.3 ma typical in receiver mode). it complies with europe- an etsi, fcc part 15 and canadian rss-210 regulatory st andards. advanced digita l features including the tx/rx fifo and the packet handling data mode significant ly reduce the load on the host microcontroller.  $        $        $        $        $      $        $           & & ' " ( ) * + ,  - . , / +  0 1 '     - . 2 +  + * + 3 * & ,  + 4 + , + % 3 + " , + 5 0 + % 3 6  ( 7 ( 8 + ,    " , + 5 0 + % 3 6  ( 7 ( 8 + ,  , 6 2 * . )  2 3 ( ) ) . * & ,  2 3 ( ) ) . * & ,  ( 7 ( 8 + ,  9 0 4 4 + , "  "   . * .  9  ) & 3 :  + 3 & 7 + , 6     "    + * + 3 * & ,     + * + 3 * & ,  ( 1 ( * + ,  ( 1 ( * + ,  "   1 ' ) ( 4 ( + ,  ( 7 ( 8 + ; 6   ( 7 ( 8 + ; 6    9    - . 2 + 0 * * + , < & , * - & ,  & ) 6 ' - . 2 + " ( ) * + ,     & <  ' . 2 2 " ( ) * + ,     & <  ' . 2 2 " ( ) * + , 0 * * + , < & , * - & ,  & ) 6 ' - . 2 + " ( ) * + ,  + 3 + ( 7 + , . % 8  ' . 2 2 " ( ) * + ,      "   1 ' ) ( 4 ( + ,  % * (  . ) ( . 2 ( % / " ( ) * + ,     , . % 2 1 ( * = . 7 + 4 & , 1 + % + , . * & ,     % * (  . ) ( . 2 ( % / " ( ) * + ,  & % * , & )  & < + ,  1 '  , ( 7 + ,    ! & 8 0 ) . * ( & %  % ' 0 *          %        %      "          >                       "   "  $     $                      $      $        $        $        $        $        $        $        $                   ) & 3 :   ( . / , . 1 figure 1 the receiver is based on a superheterodyne architec ture. it is composed of the following major blocks: ? an lna that provides low noise rf gain followed by an rf band-pass filter. ? a first mixer which down-converts the rf signal to an intermediate frequency equal to 1/9 th of the carrier frequency (about 100 mhz for 915 mhz signals). ? a variable gain first if preamplifier followed by two se cond mixers which down convert the first if signal to i and q signals at a low frequency (zero-if for fsk, low-if for ook).
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 6 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 ? a two-stage if filter followed by an amplifier chai n for both the i and q channels. limiters at the end of each chain drive the i and q inputs to the fsk demodulator function. an rssi signal is also derived from the i and q if amplifiers to drive the ook detector. the second filter stage in each channel can be con- figured as either a third-order butte rworth low-pass filter for fsk oper ation or an image reject polyphase band-pass filter for ook operation. ? an fsk arctangent type demodulator driven from the i and q limiter outputs, and an ook demodulator driven by the rssi signal. either detector can drive a data and clock recovery function that provides matched filter enhancement of the demodulated data. the transmitter chain is based on the same double-conver sion architecture and uses the same intermediate fre- quencies as the receiver chain. the main blocks include: ? a digital waveform generator that provides the i and q base-band signals. this block includes digital-to- analog converters and anti-aliasing low-pass filters. ? a compound image-rejection mixer to up convert the base-ba nd signal to the first if at 1/9th of the carrier frequency, and a second image-rejection mixer to up-convert the if signal to the rf frequency ? transmitter driver and power amplifier stages to drive the antenna port the frequency synthesizer is based on an integer-n pll having a typical frequency step size of 12.5 khz. two programmable frequency dividers in the feedback loop of the pll and one programmable divider on the reference oscillator allow the lo frequency to be adjusted. the reference frequency is gener ated by a crystal oscillator run- ning at 12.8 mhz. the TRC103 is controlled by a digital bloc k that includes registers to store t he configuration settings of the radio. these registers are accessed by a host microcontroller through an spi style seri al interface. the microcontroller?s serial connections to the TRC103?s sdi, sdo and sck pins are shown in figure 2 (component values shown are for 950-960 mhz operation; see tables 53 and 54 for other frequency bands). on-chip regulators provide stable supply voltages to sensitive blocks and allow the TRC103 to be used with supply voltages from 2.1 to 3.6 v. most blocks are supplied with a voltage below 1.6 v. figure 2 c17 1.5 pf c16 dnp
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 7 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 2.1 rf port the receiver and the transmitter share the same rf pi ns. figure 3 shows the implementation of the common front-end. in transmit mode, the pa and the pa regulator are on; the voltage on vdd_pa pin is the nominal volt- age of the regulator, about 1.8 v. the external inductanc es l1 and l4 are used for the pa. in receive mode, both pa and pa regulator are off, and vdd_pa is tied to ground. the external inductances l1 and l4 are used for bi- asing and matching the lna, which is implemented as a common gate amplifier.    & < + ,  1 '  , ( 7 + ,  + 3 + ( 7 + ,    $     = " ( ) * + ,        % * + % % .      % * + , % . )   "   & , *   + * . ( )   # figure 3 2.2 transmitter the TRC103 is set to transmit mode when mcfg00_chip_mode[7..5] bits are set to 100. in continuous mode the transmitted data is sent directly to the modulator. the host microcontroller is provided with a bit rate clock by the TRC103 to clock the data; using this clock to send the data synchronously is mandatory in fsk configuration and optional in ook configuration. in buffered mode the data is first written into the 64-byte fifo via the spi in- terface; data from the fifo is then sent to the modulator. at the front end of the transmitter, i and q signals are gener ated by the base-band circuit which contains a digital waveform generator, two d/a converters and two anti-a liasing low-pass filters. t he i and q signals are two quad- rature sinusoids whose frequency is the selected freq uency deviation. in fsk mode, the phase shift between i and q is switched between +90 and -90 according to t he input data. the modulation is then performed at this stage, since the information contained in the phase shi ft will be converted into a frequency shift when the i and q signals are combined in the first mixers. in ook mode, the phase shift is kept consta nt whatever the data. the combination of the i and q signals in the first mixers cr eates a fixed frequency signal at a low intermediate fre- quency which is equal to the selected frequency deviation. after d/a conversion, both i and q signals are filtered by anti-aliasing filters whose bandwidt h is programmed with the register txcfg1a_txinterpfilt[7..4] . behind the filters, a set of four mixers combines the i and q signal s and converts them into two i and q signals at the second intermediate frequency which is equal to 1/8 of the lo frequency, which in turn is equal to 8/9 of the rf frequen- cy. these two new i and q signals are then combined and up-converted to the desired rf frequency by two quadrature mixers fed by the lo signals. the signal is then amplified by a driver and power amplifier stage. mcfg0c_pa_ramp[4..3] t pa (s) rise/fall (s) 00 3 2.5/2 01 8.5 5/3 10 15 10/6 11 23 20/10 table 2
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 8 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 ook modulation is performed by switching on and off the pow er amplifier and its regulator. the rise and fall times of the ook signal can be configured in register mcfg0c_pa_ramp[4..3] , which controls the charge and dis- charge time of the regulator. figure 4 shows the time constants set by mcfg0c_pa_ramp[4..3]. table 2 gives typical values of the rise and fall times as defined in fi gure 4 when the capacitance c onnected to the output of the regulator is 0.047 f.      & < + ,   1 '  + / 0 ) . * & ,  "  # % 7 + ) & ' +
 ?  ( 2 + > " . ) )  ( 1 + 2   8  ( 2 + > " . ) )  ( 1 + 2     ! & 8 0 ) . * ( & %   = . 7 + 4 & , 1 2 figure 4 2.3 receiver the TRC103 is set to receive mode when mcfg00_chip_mode[7..5] is set to 011. the receiver is based on a double-conversion architecture. the front-end is composed of an lna and a mixer whose gains are constant. the mixer down-converts the rf signal to an intermediate fr equency which is equal to 1/8 of the lo frequency, which in turn is equal to 8/9 of the rf frequency. behind this first mixer there is a variable gain if amplifier that can be programmed from maximum gain to 13.5 db less in 4.5 db steps with the mcfg01_if_gain[1..0] register. after the variable gain if amplifier, the signal is do wn-converted into two i and q base-band signals by two quad- rature mixers which are fed by reference signals at 1/ 8 the lo frequency. these i and q signals are then filtered and amplified before demodulation. the first filter is a second-order passive r-c f ilter whose bandwidth can be programmed to 16 values with the register rxcfg10_lp_filt[7..4] . the second filter can be configured as either a third-order butterworth active filter which acts as a low-pass filter for the zero-if fsk configuration, or as a pol- yphase band-pass filter for the low-if ook configuration. to select butterw orth low-pass filter operation, bit rxcfg12_polyfilt_en[7] is set to 0. the bandwidth of the butterw orth filter can be programmed to 16 values with the register rxcfg10_bw_filt[3..0] . the low-if configuration must be used for ook modulation. this con- figuration is enabled when the bit rxcfg12_polyfilt_en[7] is set to 1. the center frequency of the polyphase filter can be programmed to 16 values with the register rxcfg11_polyfilt[7..4] . the bandwidth of the filter can be programmed with the register rxcfg10_bw_filt[3..0] . in ook mode, the value of the low-if is equal to the deviation frequency defined in register mcfg02_freq_dev . in addition to channel filtering, the function of the polyphase filter is to reject the image. figure 5 below show s the two configurations of the second if filter. in the butterworth configuration, f cbw is the 3 db cutoff frequency. in the polyphase band-pass configuration f opp is the center frequency given by rxcfg11_polyfilt[7..4] , and f cpp is the upper 3 db bandwidth of the filter whose off- set, referenced to f opp , is given by rxcfg10_bw_filt[3..0].
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 9 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 "  = "    "     @ "       "    0 * * + , < & * -   & <  ' . 2 2  " ( ) * + ,  4 & ,  "    & ) 6 ' - . 2 +  . % 8  ' . 2 2  " ( ) * + ,  4 & ,            + 3 & % 8   "  " ( ) * + ,   + * . ( ) 2 figure 5 after filtering, the i and q signals are each amplified by a chain of 11 amplifiers having 6 db of gain each. the outputs of these amplifiers and their intermediate 3 db node s are used to evaluate the received signal strength (rssi). limiters are located behind the 11 amplifiers of the i and q chains and the sig nals at the output of these limiters are used by the fsk demodulator. the rssi out put is used by the ook demodulator. the global band- width of the whole base-band chain is given by the bandwidths of the passive f ilter, the butterworth filter, the am- plifier chain and the limiter. the maximum achievable global bandwidth when the bandwidths of the first three blocks are programmed at their upper limit is about 350 khz. 2.4 crystal oscillator crystal specifications for the TRC103 reference oscillato r are given in table 3. rfm recommends the xtl1020p crystal, which is specifically designed for use with the tr c103. note that crystal freque ncy error will directly trans- late to carrier frequency, bit rate and frequency deviation error. specification min typical max units nominal frequency - 12.80000 (fundamental) - mhz load capacitance for fs 13.5 15 16.5 pf motional resistance - - 50 ? motional capacitance 5 - 20 ff shunt capacitance 1 - 7 pf calibration tolerance at 25 c - 10 ppm stability over temperature range (-40 c to 85 c) 1 - 15 ppm aging in first 5 years - - 2 ppm/yr table 3
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 10 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 2.5 frequency synthesizer the frequency synthesizer generates the local oscillator (lo) signal for the receiver and transmitter sections. the core of the synthesizer is implemen ted with an integer-n pll architecture. the frequency is set by three divider pa rameters r, p and s. r is the frequenc y divider ratio in the reference fre- quency path. p and s set the frequency divider ratio in t he feedback loop of the pll. the frequency synthesizer includes a crystal oscillator which prov ides the frequency reference for the pll. the equations giving the rela- tionships between the reference crysta l frequency, the local oscillator frequency and rf carrier frequency are giv- en below: f lo = f xtal *(75*(p + 1) + s)/(r + 1), with p and s in the range 0 to 255, s less than (p + 1), r in the range 64 to 169, and f lo and f xtal in mhz. f rf = 1.125*f lo , where f rf and f lo are in mhz f lo is the first local oscillator (vco) frequency, f xtal is the reference crystal frequency and f rf is the rf channel frequency. f lo is the frequency used for the first down-conversion of the receiver and the second up-conversion of the transmitter. the intermediate frequency used for the se cond down-conversion of the receiver and the first up- conversion of the transmitter is equal to 1/8 of f lo . as an example, with a crystal frequency of 12.8 mhz and an rf frequency of 869 mhz, f lo is 772.4 mhz and the first if of the receiver is 96.6 mhz. there are two sets of divider ratio registers: synthr1[7..0] , synthp1[7..0] , synths1[7..0 ], and synthr2[7..0] , synthp2[7..0] , synths2[7..0] . the mcfg00_rf_frequency[0] bit is used to select whic h set of registers to use as the current frequency setting. for frequency hopping applications, this reduces the programming and synthe- sizer settling time when changing frequencies. while t he data is being transmitted, the next frequency is pro- grammed and ready. when the current transaction is complete, the mcfg00_rf_frequency[0] bit is comple- mented and the frequency shifts to the next freq according to the contents of the divider ratio registers. this pro- cess is repeated for each frequency hop. 2.6 pll loop filter the loop filter for the frequency sy nthesizer is shown in figure 6. pll loop filter figure 6 typical recommended component values for the frequency synthesizer loop filter are provided in table 4 above. the loop filter settings are not dependent on the frequency ba nd, so they can be universally used on all designs. pll lock status can be provided on pin 23 by setting the irqcfg0e_pll_lock_en[0] bit to a 1 (default). when the pll is locked pin 23 (pll_lock) is high, and wh en the pll is unlocked pin 23 is low. the lock status of the pll can also be checked by reading the irqcfg0e_pll_lock_st[1] bit. note that this bit latches high each time the pll locks and must be reset by writing a 1 to it. name value tolerance c8 1000 pf 10% c9 6800 pf 10% r1 6.8 k ? 5% pll loop filter components table 4
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 11 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 3.0 operating modes the TRC103 has 5 possible chip-level modes. the chip-level mode is set by mcfg00_chip_mode[7..5] , which is a 3-bit pattern in the configuration regist er. table 5 summarizes the chip-level modes: mcfg00_chip_mode[7..5] chip-level mode enabled functions 0 0 0 sleep none 0 0 1 standby crystal oscillator 0 1 0 synthesizer crystal and frequency synthesizer 0 1 1 receive crystal, frequency synthesizer and receiver 1 0 0 transmit crystal, frequency synthesizer and transmitter table 5 table 6 gives the state of the digital pins fo r the different chip-level modes and settings: pin function sleep mode standby mode synthesizer mode receive mode transmit mode nss_config* i i i i i nss_data* i i i i i irq0 tri o o o o irq1 tri o o o o data tri tri tri o i clkout tri o o o o sdo** tri/o tri/o tri/o tri/o tri/o sdi i i i i i sck i i i i i table 6 the TRC103 transmitter and receiver sections su pport three data handling modes of operation: ? continuous mode: each bit transmitted or received is accessed directly at t he data input/output pin. ? buffered mode: a 64-byte fifo is used to store each data byte transmitted or received. this data is writ- ten to and read from the fifo through the spi bus. ? packet handling mode: in addition to using the fifo, this data mode builds the complete packet in transmit mode and extracts the useful data from t he packet in receive mode. the packet includes a pre- amble, a start pattern (sync pattern), an optional n ode address and length byte a nd the data. packet data mode can also be configured to perform additional ope rations like crc error detection and dc-balanced manchester encoding or data scrambling. the buffered and packet data modes allow the host micr ocontroller overhead to be significantly reduced. the data pin is bidirectional and is used in both transmit and receive modes. in receive mode, data represents the demodulated received data. in transmit mode, input data is applied to this pin. i = input, o = output, tri = high impedance *nss_config has priority over nss_data **sdo is an output if nss_config = 0 and/or nss_data = 0
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 12 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 the working length of the fifo can set to 16, 32, 48 or 64 bytes through the mcfg05_fifo_depth[7..6] register. in the discussions below describing the fifo behavior, the explanations are given with an assumption of 64 bytes, but the principle is the same for the four possible fifo sizes. the status of the fifo can be monitored via interrupts which are described in section 3.7. in addition to the straightforward nfifoempy and fifofull interrupts, additional configurable interrupts fifo_int_tx and fifo_int_rx are also available. a low-to-high transition occurs on fifo_int_rx when the num ber of bytes in the fifo is greater than or equal to the threshold set by mcfg05_fifo_thresh[5..0] (number of bytes fifo_thresh). a low-to-high transition occurs on fifo_int_tx when the numbe r of bytes in the fifo is less than or equal to the threshold set by mcfg05_fifo_thresh[5..0] (number of bytes fifo_thresh). 3.1 receiving in continuous data mode the receiver operates in continuous mode when the mcfg01_mode[5] bit is set low. in this mode, the receiver has two output signals indicating recovered clock, dclk and recovered nrz bit data. dclk is connected to output pin irq1 and data is connected to pin data c onfigured in output mode. the data and clock recovery controls the recovered clock signal, dclk. data and clock recovery is enabled by rxcfg12_dclk_dis[6] to 0 (default value). the clock recovered from the incomi ng data stream appears at dclk. when data and clock re- covery is disabled, the dclk output is held low and t he raw demodulator output appears at data. the function of data and clock recovery is to remove glitches from the data stream and to provide a synchronous clock at dclk. the output data is valid at the rising edge of dclk as shown in figure 8.  . * .  9  ) & 3 :  + 3 & 7 + , 6     "    + * + 3 * & ,     + * + 3 * & ,  ( 1 ( * + ,  ( 1 ( * + ,  "   1 ' ) ( 4 ( + ,  "   1 ' ) ( 4 ( + , "   >     * . , *  . * * + , %  + * + 3 *  $      #            a     b           & % * ( % 0 & 0 2  ! & 8 +   + 1 & 8 0 ) . * ( & %                 figure 7 as shown in figure 7, the demodulator section incl udes the fsk demodulator, the ook demodulator, data and clock recovery and the start pattern detection blocks.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 13 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 if fsk is selected, the demodulation is performed by analyzing the phase between the i and q limited signals at the output of the base-band channels. if ook is selected, the demodulation is performed by comparing the rssi output value stored in rxcfg14_ rssi[7..0] register to the threshold which can be either a fixed value or a time-variant value depending on the past history of the rssi output. table 7 gives the three main possible procedures, which can be selected via the register mcfg01_rx_ook[4..3] : table 7 if the end-user application requires direct access to the output of the demodulator, then the rxcfg12_ dclk_dis[6] bit is set to 1 disabling the clock recovery. in th is case the demodulator out put is directly connected to the data pin and the irq1 pin (dclk) is set to low. for proper operation of the TRC103 demodul ator in fsk mode, the modulation index of the input signal should meet the following condition: 2*f dev = 2 br where f dev is the frequency deviation in hertz (hz) and br is the data rate in bits per second (b/s). 3.2 continuous mode data and clock recovery the raw output signal from the demodulator may contain ji tter and glitches. data and clock recovery converts the data output of the demodulator into a g litch-free bit-stream data and generat es a synchronized clock dclk to be used for sampling the data output as shown in figure 8. dclk is available on pin irq1 when the TRC103 oper- ates in continuous mode.               
  

             . * .  9   ) & 3 :   + 3 & 7 + , 6   ( 1 ( % / figure 8 to ensure correct operation of the data and clock recovery circuit, the following conditions have to be satisfied: ? a 1-0-1-0? preamble of at least 24 bits is required for synchronization ? the transmitted bit stream must have at least one tran sition from 0 to 1 or from 1 to 0 every 8 bits during transmission ? the bit rate accuracy must be better than 2 %. ook mode mcfg01_rx_ook[4..3] description fixed threshold 00 rssi output is compared with a fixed threshold stored in mcfg04_ook_thresh peak 01 rssi output is compared with a threshold which is at a fixed offset below the maximum rssi. average 10 rssi output is compared with the average of the last rssi values.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 14 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 data and clock recovery is enabled by default. it is controlled by rxcfg12_dclk_dis[6] . if data and clock re- covery is disabled, the output of the demodulator is di rected to data and the dclk output (irq1 pin in continu- ous mode) is set to 0. the received bit rate is defined by the value of the mcfg03_bit_rate[6..0] configuration register, and is calcu- lated as follows: br = f xtal /(64*(d + 1)), with d in the range of 0 to 127 with br the bit rate in kb/s, f xtal the crystal frequency in khz, and d the value in mcfg03_bit_rate[6..0] . for example, using a 12.8 mhz crystal (12,800 khz) , the bit rate is 25 kb/s when d = 7. 3.3 continuous mode star t pattern recognition start pattern detection (recognition) is activated by setting the rxcfg12_recog[5] bit to 1. the demodulated signal is compared with a pattern stored in the syncfg registers. the start pattern detect (pattern) signal, mapped to output pin irq0, is driven by the output of this comparator and is synchronized by dclk. it is set to 1 when a start pattern match is detected, otherwise it is se t to 0. the start pattern detect output is updated at the rising edge of dclk. the number of bytes used for comparison is defined in the rxcfg12_pat_sz[4..3] register and the number of tolerated bit errors for the pattern detection is defined in the rxcfg12_ptol[2..1] register. figure 9 illustrates the pattern detection process. ( *  ( *   ( *    ( *  ( *                #   #  #    * . , *   . * * + , %   + * + 3 * ( & %   ( 1 ( % / figure 9 note that start pattern detection is enabled only if data and clock recovery is enabled. 3.4 rssi the received signal strength is measured in the amplif ier chains behind the second mixers. each amplifier chain is composed of 11 amplifiers each having a gain of 6 db and an intermediate output at 3 db. by monitoring the two outputs of each stage, an estimation of the signal stre ngth with a resolution of 3 db and a dynamic range of 63 db is obtained without if gain compensation. this estimation is performed 16 times over a period of the i and q signals and the 16 samples are averag ed to obtain a final rssi value with a 0.5 db step. the period of the i and q signal is the inverse of the deviation frequency, wh ich is the low-if frequency in ook mode. the rssi effective dynamic range can be in creased to 70 db by adjusting mcfg01_if_gain[1..0] for less gain on high signal levels.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 15 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 the rssi block can be used in interrupt mode by setting the bit irqcfg0e_rssi_int[3] to 1. when rxcfg14 _ rssi[7..0] is equal or greater than a predefined value stored in irqcfg0f_rssi_thld [7..0] , the bit irqcfg0e_ sig_detect[2] goes high and an interrupt signal rssi_irq is generated on pin irq0 if irqcfg0d_rx_ irq0[7..6] is set to 01 (see table 8). the interr upt is cleared by writing a 1 to bit irqcfg0e_ sig_detect[2] . if the bit rssi_irq remains high, the proc ess starts again. figure 10 shows the timing diagram of rssi in interrupt mode.             
     $ $             % * + , , 0 ' *   ' + , . * ( & %       - , + 2 - & ) 8   + *  * &   $         " #  ( *   a       % * b  $  "   a       . ) 0 + b     " #  ( *   a     #  #   b  % * + , , 0 ' *  + * + 3 * + 8  % * + , , 0 ' *  + 2 + *  % * + , , 0 ' *  + * + 3 * + 8  % * + , , 0 ' *  + 2 + * figure 10 3.5 receiving in buffered data mode the receiver works in buffered mode when the mcfg01_mode[5] bit is set to 1. in this mode, the output of the data and clock recovery, i.e., the demodulated and resynchr onized signal and the clock signal dclk are not sent directly to the output pins data and irq1 (dclk). these signals are used to store the demodulated data in blocks of 8 bits in a 64-byte fifo. figure 11 shows t he receiver chain in this mode. the fsk and ook demodula- tors, data and clock recovery circuit and start pattern detect block work as described for continuous data mode, but they are used with two additional blocks, the fifo and spi.  . * .  9  ) & 3 :  + 3 & 7 + , 6     "    + * + 3 * & ,     + * + 3 * & ,  ( 1 ( * + ,  ( 1 ( * + ,  "   1 ' ) ( 4 ( + ,  "   1 ' ) ( 4 ( + , "   >     * . , *  . * * + , %  + * + 3 *  $      #              "  "                 "  "   , 8     ) 8     %                       0 4 4 + , 8  9   . 3 : + *  ! & 8 +   + 1 & 8 0 ) . * ( & %  $      "  "  "    "  "    % *     #  % "  "  # !   c = , ( * +  6 * + figure 11
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 16 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 when the TRC103 is in receive mode and mcfg01_mode [5] bit is set to 1, all of the blocks described above are enabled. in a normal communication frame, the data stream is comprised of preamble bytes, a start pattern and the data. upon receipt of a matching start pattern the receiv er recognizes the start of data, strips off the preamble and start pattern, and stores the data in the fifo for retr ieval by the host microcontroller. this automated data extraction reduces the loading on the host microcontroller. the irqcfg0e_start_fill[7] bit determines how the fifo is filled. if irqcfg0e_start_fill[7] is set to 0, data only fills the fifo when a pattern match is detected. rece ived data bits are shifted into the pattern recognition block which continuously compares the received data with the contents of the syncfg registers. if a match oc- curs, the pattern matching block output is set for one bit period and the irqcfg0e_start_det[6] bit is also set. this internal signal can be mapped to the irq0 output us ing interrupt signal mapping. once a pattern match has occurred, the pattern recognition block will remain inactive until irqcfg0e_start_det[6] bit is reset. if irqcfg0e_start_fill[7] is set to 1, fifo filling is initiated by asserting irqcfg0e_start_det[6] . once 64 bytes have been written to the fifo the irqcfg0d_fifofull[2] signal is set. data should then be read out. if no action is taken, the fifo will overflow and subsequent data will be lost. if this occurs the irqcfg0d_ fifo_ovr[0] bit is set to 1. the irqcfg0d_fifofull[2] signal can be mapped to pin irq1 as an interrupt for a microcontroller if irqcfg0d_rx_irq1[5..4] is set to 01. to recover from an overflow, a 1 must be written to irqcfg0d_ fifo_ovr[0] . this clears the contents of the fifo, rese ts all fifo status flags and re-initiates pat- tern matching. pattern matching can also be re-initi ated during a fifo filling sequence by writing a 1 to irqcfg0e_start_det[6] . the details of the fifo filling process are shown in figure 12. as the first byte is wr itten into the fifo, signal irqcfg0d_nfifoempy[1] is set indicating at least one byte is pr esent. the host microcontroller can then read the contents of the fifo through the spi inte rface. when all data is read from the fifo, irqcfg0d_ nfifoempy[1] is reset. when the last bit of the 64 th byte has been written into the fifo, signal irqcfg0d_ fifofull[2] is set. data must be read before the next byte is received or it will be overwritten. the irqcfg0d_nfifoempy[1] signal can be used as an interrupt signal for the host microcontroller by map- ping to pin irq0 if irqcfg0d_rx_irq0[7..6] is set to 10. alternatively, the write_byte signal may also be used as an interrupt if irqcfg0d_rx_irq0[7..6] is set to 01. demodulation in buffered data mode occurs in the same wa y as in continuous data mode. received data is di- rectly read from the fifo and the data and dclk pins ar e not used. data and clock recovery in buffered data mode is automatically enabled. dclk is not externally available. the pattern recognition block is automatically enabled in buffered mode. the start pattern detect (pattern) signal can be mapped to pin irq0. in buffered data mode rssi operates the same way as in continuous data mode. however, rssi_irq may be mapped to irq1 instead of to irq0 in continuous mode.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 17 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 $        $  "  "   " ( ) )    ( *  a 1 ( % b   , + . 1 ; ) +  a   d d d b   * &    6 * +   * . , *   . * * + , % 6 * +  6 * +   6 * +    6 * +    $          * . , *   . * * + , % = , ( * +  ; 6 * + % "  "  # !  c "  "  "    figure 12 3.6 transmitting in continuou s or buffered data modes the transmitter operates in continuous data mode when the mcfg01_mode [5] bit is set to 0. bit clock dclk is available on pin irq1. bits are clocked into the transmitte r on the rising edge of this clock. data must be stable 2 s before the rising edge of dclk and must be held for 2 s following the rising edge of this clock (t sudata ). to meet this requirement, data can be changed on the falli ng edge of dclk. in fsk mode dclk must be used but is optional in ook mode. the transmitter operates in buffered data mode when the mcfg01_mode [5] bit is set to 1. data to be transmit- ted is written to the 64-byte fifo through the spi interface. fifo data is loaded byte-by- byte into a shift register which then transfers the data bit-by-bit to the modulator . fifo operation in transmit mode is similar to receive mode. transmission can start immediately a fter the first byte of data is written into the fifo or when the fifo is full, as determined by the irqcfg0e_start_full[4] bit setting. if the transmit fifo is full, the interrupt signal irqcfg0d_ fifofull[2] is asserted on pin irq1. if data is written into the fifo while it is full, the flag irqcfg0d_fifo_ovr[0] will be set to 1 and the previous fifo contents will be overwritten. the irqcfg0d_ fifo_ovr[0] flag is cleared by writing a 1 to it. at the same time the contents of the fifo are cleared. once the last data byte in the fifo is loaded into the shi ft register driving the transmitter modulator, the flag irqcfg0d_ nfifoempy[1] is set to 0 on pin irq0. if new data is not writt en to the fifo and the last bit has been transferred to the modulator, the irqcfg0e_tx_ stop[5] bit goes high as the modulator starts to send the last bit. the transmitter must remain on one bit period after tx_stop to transmit the last bit. if the transmitter is switched off (switched to another mode), the transmission stops immediat ely even if there is still data in the shift register. in transmit mode the two interrupt signals are irq0 and irq1. irq1 is mapped to irqcfg0d_fifofull[2] signal indicating that the transmission fifo is full when irqcfg0d_tx_irq1[3] is set to 0, or to irqcfg0e_tx_ stop[5] when irqcfg0d_ tx_irq1[3] is set to 1. irq0 is mapped to the irqcfg0d_nfifoempy[1] signal. this signal indicates the transmitter fifo is empty and must be refilled with data to continue transmission. 3.7 irq0 and irq1 mapping two TRC103 outputs are dedicated to host microcontroller interrupts or signaling. the interrupts are irq0 and irq1 and each have selectable sources. tables 8, 9, 10 and 11 below summarize the interrupt mapping options. these interrupts are especially useful in continuous or buffered data mode operation.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 18 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 irqcfg0d_rx_irq0 data mode irq0 irq0 interrupt source 00 continuous output start pattern detect 01 continuous output rssi_irq 10 continuous output start pattern detect 11 continuous output start pattern detect 00 buffered output none (set to 0) 01 buffered output write_byte 10 buffered output nfifoempy 11 buffered output start pattern detect 00 packet output data_rdy 01 packet output write_byte 10 packet output nfifoempy 11 packet output node address match if addrs_cmp is enabled start pattern detect if addrs_cmp is disabled table 8 irqcfg0d_rx_irq1 data mode irq1 irq1 interrupt source 00 continuous output dclk 01 continuous output dclk 10 continuous output dclk 11 continuous output dclk 00 buffered output none (set to 0) 01 buffered output fifofull 10 buffered output rssi_irq 11 buffered output fifo_int_rx 00 packet output crc_ok 01 packet output fifofull 10 packet output rssi_irq 11 packet output fifo_int_rx table 9 tables 10 and 11 describe the interrupts available in transmit mode: irqcfg0d_tx_irq0 data mode irq0 irq0 interrupt source 0 continuous output none (set to 0) 1 continuous output none (set to 0) 0 buffered output fifo_thresh 1 buffered output nfifoempy 0 packet output fifo_thresh 1 packet output nfifoempy table 10 irqcfg0d_tx_irq1 data mode irq1 irq0 interrupt source 0 continuous output dclk 1 continuous output dclk 0 buffered output fifofull 1 buffered output tx_stop 0 packet output fifofull 1 packet output tx_stop table 11
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 19 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 3.8 buffered clock output the buffered clock output is a signal derived from f xtal . it can be used as a reference clock for the host microcon- troller and is output on the clkout pin. the oscfg1b_clkout_en[7] bit controls the clkout pin. when this bit is set to 1, clkout is enabled, otherwise it is disabled. the output frequency of clkout is defined by the value of the oscfg1b_clk_freq[6..2] parameter which gives the frequency divider ratio applied to f xtal . refer to table 40 for programming details. note: clkout is disabled when the TRC103 is in sleep mode. if sleep mode is used, the host microcontroller must have pr ovisions to run from its own clock source. 3.9 packet data modes the TRC103 provides optional on-chip rx and tx packet handling features. these features ease the develop- ment of packet oriented wireless communication protocol s and free the mcu resources for other tasks. the op- tions include enabling protocols based on fixed and variabl e packet lengths, data scrambling, crc checksum cal- culations, and received packet filter ing. all the programmable parameters of the packet handler are accessible through the pktcfg configuration registers of the devi ce. the packet handling mode is enabled when the regis- ter bit mcfg01_packet_hdl_en[2] is set to 1. the packet handler supports three types of packet formats: fixed length packets, variable length packets, and ex- tended variable length packets. the pktcfg1e_pkt_mode[7] bit selects either the fixed or the variable length packet formats. 3.9.1 fixed length packet mode the fixed length packet mode is selected by setting the pktcfg1e_pkt_mode[7] bit to 0. in this mode the length of the packet is set by the pktcfg1c_pkt_len[6..0] register up to the size of the fifo which has been selected. the length stored in this register is the le ngth of the payload which includes the message data bytes and optional address byte. the fixed lengt h packet format shown in figure 13 is made up of the following fields: 1. preamble 2. start pattern (network address) 3. node address byte (optional) 4. data bytes 5. two-byte crc checksum (optional)  , + . 1 ; ) +   * &    6 * + 2  * . , *   . * * + , % a + * < & , :   8 8 , + 2 2 b   * &    6 * + 2  ' * ( & % . ) & 8 +  8 8 , + 2 2 6 * +  . * .  6 * + 2      6 * + 2            
         
    
              " ( e + 8   + % / * -   . 3 : + *  " & , 1 . *     !       "        !          #                        $           #  % & '  ( 
      
                     $    ( 
     
  ) !         *  !    + , %  - ! $  -  . / ) ) & 0   1
 (         *  + 2 + 3       figure 13
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 20 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 3.9.2 variable length packet mode the variable length packet mode is selected by setting bit pktcfg1e_pkt_mode[7] to 1. the packet format shown in figure 14 is programmable and is made up of the following fields: 1. preamble 2. start pattern (network address) 3. length byte 4. node address byte (optional) 5. data bytes 6. two-byte crc checksum (optional)  , + . 1 ; ) +   * &    6 * + 2  * . , *   . * * + , % a + * < & , :   8 8 , + 2 2 b   * &    6 * + 2  ' * ( & % . ) & 8 +  8 8 , + 2 2 6 * +  . * .  6 * + 2      6 * + 2            
         
    
                1
 (   !         *  + 2 + 3        . , ( . ; ) +   + % / * -   . 3 : + *  " & , 1 . *  + % / * - 6 * +     !       "        !          #                        $           #  % & '  ( 
      
                     $    ( 
     
  ) figure 14 in variable length packet mode, the length of the rest of the payload is given by the firs t byte written to the fifo. the length byte itself is not included in this count. the pktcfg1c_pkt_len[6..0] parameter is used to set the maximum received payload length allowed. any received packet having a value in the length byte greater than this maximum is discarded. the variable length packet fo rmat accommodates payloads, including the length byte, up to the length of the fifo. 3.9.3 extended variable length packet mode the extended variable length packet mode is selected by setting bit pktcfg1e_pkt_mode[7] to 1 and setting pktcfg1c_pkt_len[6..0] to a value between 65 and 127. the packet format shown in figure 15 is programma- ble and is made up of the following fields: 1. preamble 2. start pattern (network address) 3. length byte 4. node address byte (optional) 5. data bytes 6. two-byte crc checksum (optional)  , + . 1 ; ) +   * &    6 * + 2  * . , *   . * * + , % a + * < & , :   8 8 , + 2 2 b   * &    6 * + 2  ' * ( & % . ) & 8 +  8 8 , + 2 2 6 * +  . * .  6 * + 2      6 * + 2            
         
    
                1
 (   !         *  !    + , %  - ! $  -  . / ) ) & 0  + % / * - 6 * +     !       "        !          #                        $           #  % & '  ( 
      
                     $    ( 
     
  ) # e * + % 8 + 8   . , ( . ; ) +   + % / * -   . 3 : + *  " & , 1 . * f     * &      6 * + 2 figure 15
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 21 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 in extended variable length packet mode, the length of the rest of the payload is given by the first byte written to the fifo. the length byte itself is not included in this count. there are a number of ways to use the extended var- iable length packet capability. the most common way is outlined below: 1. set pktcfg1c_pkt_len[6..0] to a value between 65 (0x41) and 127 (0x7f). this sets the maximum allowed payload in extended packet mode. any received packet havi ng a value in the length byte greater than this maxi- mum is discarded. 2. set pktcfg1e_pkt_mode[7 ] to 1 for variable length packet mode operation. set the pktcfg1e_ pre- amb_len[6..5] bits to 10 or 11 for a minimum of 3 to 4 preamble bytes. set the pktcfg1e_crc_en[3] bit to 1 to enable crc processing. set the pktcfg1e_pkt_addrs_cmp[2..1] bits as required. clear the pktcfg1e_ crc_stat[0] bit by writing a 1 to it. 3. set mcfg05_fifo_depth[7..6] bits to 11 for a 64-byte fifo length. 4. set the mcfg05_fifo_thresh[5..0] to approximately 31(0x1f). this sets the threshold to 32, near the mid point of the fifo. provided the host microcontroller is re latively fast (usual case), this setting can be used for monitoring the fifo in both transmit and receive. if the host microcontroller is relatively slow, set the threshold to a value lower than 31 for receive, and higher than 31 for transmit. 5. set the irqcfg0d_rx_irq1[5..4] bits to 11. this maps fifo_int_rx in terrupt to irq1, wh ich trips when the number of received bytes in the fifo is equal to or gr eater than the value in mcfg05_fifo_thresh. irq1 will then signal received bytes must be retrieved. if received by tes are not retrieved before the fifo completely fills, data will be lost. 6. set the irqcfg0e_start_full[4] bit to 0. this causes a transmission to start when the number of transmit bytes in the fifo is equal to or greater than the valu e in mcfg05_fifo_thresh. also, the fifo_int_tx interrupt is mapped to irq0 in transmit mode, and is set when the num ber of bytes in the fifo is equal to or less than the value in mcfg05_fifo_thresh. irq0 will then signal mo re bytes can be added to the fifo. if more message bytes are not added in time, the transmission will cease pr ematurely and data will be lost. likewise, if more bytes are sent to the fifo than it has room for, data will be lost. 7. when receiving an extended variable lengt h packet, monitor irq1. when irq1 trips, clock out some of the re- ceived bytes from the fifo (leave at least one byte in t he fifo). repeat the partial packet retrieval each time irq1 triggers. the first byte received is the number of message bytes, and can be used to tell when the last mes- sage byte has been retrieved. when it is determined that the remaining mess age bytes will not overflow the fifo, the irqcfg0d_rx_ irq1[5..4] bits can be set to 00, which maps crc_ ok to irq1. after the crc is checked, the final bytes can be read from the fifo and the irqcfg0d_rx_irq1[5..4 ] bits can be reset to 11 to track fifo_int_rx when the next packet is received. note that crc mapping to irq1 is not required if the crc state is read from the pktcfg1e_ crc_stat[0] bit prior to reading the final fifo bytes. 8. when transmitting an extended variable length packet, begi n filling the fifo until irq0 trips, indicating the fifo is half full. add up to 32 bytes to the fifo (64 - (mcfg05_ fifo_thresh +1)) when irq0 resets. repeat the partial packet loading each time irq0 resets until all bytes to be transmitted have been clocked in. the irqcfg0d_tx_irq1[3 ] bit can then be set to 1, which allows the tx_stop event to be mapped to irq1. tx_stop signals the last bit to be transmitted has been tran sferred the modulator. allow one bit period for this bit to be transmitted before switching out of transmit mode.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 22 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 3.9.4 packet payload processing in transmit and receive the TRC103 packet handler constructs transmit packets usi ng the payload bytes in the fifo. in receive, it pro- cesses the packets and extracts the payload bytes to t he fifo. packet processing in transmit and receive are detailed below. for transmit, the packet handler adds the following fields and processing to the payload in the fifo: 1. one to four programmable preamble bytes 2. one to four start pattern bytes, progra mmable and usually set to at least 2 bytes 3. optional crc checksum calcul ated over the fifo payload and appe nding to the end of the packet 4. optional manchester encoding or dc-balanced scrambling the payload in the fifo may contain one or both of the following optional fields: 1. a length byte if the variable packet length mode is selected 2. a node address byte the way transmission is initiated depends on the conf iguration set by the user and the value of the irqcfg0e_start_full[4] bit. if the fifo is filled while transmit mode is enabled, and if irqcfg0e_start_full[4] is set to 1, the modulator waits until the first byte is written into the fifo, then it starts sending the progra mmed preamble bytes followed by the start pattern and the user payload. if irqcfg0e_start_full[4 ] is set to 0 in the same conditions, the modu- lator waits until the number of bytes written in the fifo is equal to the number defined in the register mcfg05_ fifo_thresh[5..0] . note that the transmitter automatically se nds preamble bytes in addition the number pro- grammed while in transmit mode and waiting for the fifo to receive the required number of bytes to start data transmission. data to be transmitted can also be written in to the fifo during standby mode. in this case, the data is automatically transmitted when the transmit mode is enabled and the transmitter reaches its steady state. if crc is enabled, the crc checksum is calculated over t he payload bytes. this 16-bit checksum is sent after the bytes in the fifo. if crc is enabled, the tx_stop bit is se t when the last crc bit is transferred to the tx modu- lator. if crc is not enabled, the tx_stop bit is set when the last bit from the fifo is transferred to the tx modu- lator. note that the transmitter must remain on one bit per iod after the tx_stop bit is set while the last bit is be- ing transmitted. if the transmitter remains on following the transmission of the last bit after tx_stop is set, the transmitter will send preamble bytes. if manchester encodi ng or scrambling is enabled, all data except the pream- ble and start pattern is encoded or scrambled before transmi ssion. note that the length byte in the fifo deter- mines the length of the packet to be sent and the pktcfg1c_pkt_len[6..0] parameter is not used in transmit. in receive the packet handler retrieves the payload by performing the following steps: 1. data and clock recovery synchronization to the preamble 2. start pattern detection 3. optional address byte check 4. error detection through crc when receive mode is enabled, the demodulator detects t he preamble followed by the start pattern. if fixed length packet format is enabled, then the number of by tes received as the payload is given by the pktcfg1c_pkt_ len[6..0] parameter. in variable length and extended variable length packet modes , the first byte received after the start pattern is interpreted as the length of the balance of the payload. an internal length counter is initialized to this length. the pktcfg1c_pkt_len[6..0] register must be set to a value which is equal to or greater than the maximum
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 23 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 expected length byte value of the received packet. if the lengt h byte value of a received packet is greater than the value in the pktcfg1c_ pkt_len[6..0] register, the packet is discarded. otherwise the packet payload begins loading into the fifo. if address match is enabled, the second byte received in a variable length mode or the first byte in the fixed length mode is interpreted as the node address. if this address matches the byte in pktcfg1d_node_addrs[7..0] , reception of the packet conti nues, otherwise it is stopped. a crc check is performed if pktcfg1e_crc_ en[3] is set to 1. if the crc check is successful, a 1 is loaded in the pktcfg1e_crc_stat[0] bit, and crc_ok and dat_rdy interrupts are simultaneously generated on irq1 and irq0 respectively. this signals that the pay- load or balance of the payload can be read from the fi fo. in receive mode, address match, dat_rdy, and crc_ok interrupts and the crc_ stat bit are reset when the last byte in the fifo is read. note the fifo can be read in standby mode by setting pgcfg1f_ rnw_fifo[6] bit to 1. in standby, reading the last fifo byte does not clear crc_ok and the crc_stat bit. they are reset once the TRC103 is put in receive mode again and a start pattern is detected. if the crc check fails, the fifo is cleared and no interrupt s are generated. this action can be overridden by set- ting pgcfg1f_crcclr_auto[7 ] to 1, which forces a dat_rdy interr upt and preserves the payload in the fifo even if the crc fails. 3.9.5 packet filtering received packets can be filtered based on two criteria: l ength filtering and address filtering. in variable length or extended variable length packet formats, pktcfg1c_pkt_len[6..0] stores the maximum payload length permit- ted. if a received packet length byte is greater than this va lue, then the packet is disc arded. node address filtering is enabled by setting parameter pktcfg1e_addrs_cmp[2..1] to any value other than 00, i.e., 01, 10 or 11. these settings enable the following three options: pktcfg1e_addrs_cmp[2..1] = 01: this configuration activates the node address filtering function on the pack- et handler and the received address byte is compared with the address in the pktcfg1d_node_ addrs[7..0] register. if both address bytes are the same, the received packet is for the current destination and is stored in fifo. otherwise it is discarded. an interrupt can also be generated on irq0 if the address comparison is suc- cessful. pktcfg1e_addrs_cmp[2..1] = 10: in this configuration the received address is compared to both the pktcfg1d_node_addrs[7..0] register and constant 0x00. if the rece ived node address byte matches either value, the packet is accepted. an in terrupt can also be generated on irq0 if the address comparison is success- ful. the 0x00 address is useful for sending broadcast packets. pktcfg1e_addrs_cmp[2..1] = 11: in this configuration the packet is accepted if the received node address matches the pktcfg1d_ node_addrs[7..0] register, 0x00 or 0xff. an interrupt can also be generated on irq0 if the address comparison is successful. the 0x00 and 0x ff addresses are useful for sending two types of broad- cast packets. 3.9.6 cyclic redundancy check the crc check is enabled by setting the pktcfg1e_crc_en[3] bit to 1. a 16-bit crc checksum is calculated on the payload part of the packet and is appended to the end of the transmitted message. the crc checksum is calculated on the received payload and compared to the tran smitted crc. the result of the comparison is stored in the pktcfg1e_crc_stat[0] bit and a crc_ok interrupt can also be generated on irq1. the crc is based on the ccitt polynomial as shown in figure 16. the crc also detects errors due to leading and trailing zeros.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 24 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12         $   $                  $                   1 ' ) + 1 + % * . * ( & % $      $      $        % /   
     
               %              #      (  
figure 16 3.9.7 manchester encoding manchester encoding is enabled by setting the pktcfg1c_man_en[7] bit to 1, and can only be used in packet data mode. figure 17 illustrates manchester encoding. nrz data is converted to manchester by encoding 1 bits as 10 chip sequences, and 0 bits as 01 chip sequences. manchester encoding guarantees dc-balance and fre- quent data transitions in the encoded data. note the maximu m manchester chip rate corresponds to the maximum bit rate given in the specifications in table 48.  - ( '  ) & 3 :  g  . * . ! . % 3 - + 2 * + , # % 3 & 8 + 8  . * .       ! . % 3 - + 2 * + ,   . * .  # % 3 & 8 ( % / figure17 in transmit, manchester encoding is applied only to t he payload and crc parts of the packet. the receiver de- codes the payload and crc before perfor ming other packet processing tasks. 3.9.8 dc-balanced scrambling a payload may contain long sequences of 1 or 0 bits. t hese sequences would introduce dc biases in the trans- mitted signal, causing a non-uniform power distribution sp ectrum. these sequences would also degrade the per- formance of the demodulation and data and clock recovery functions in the receiver. system performance can be enhanced if the payload bits are randomized to reduce dc biases and increase the number of bit transitions. as discussed above, dc-balanced data can be obtained by using manchester encoding, which ensures that there are no more than two consecutive 1?s or 0?s in the transmitt ed data. however, this reduces the effective bit-rate of the system because it doubles the amount of data to be transmitted. another technique called scrambling (whitening) is widely used for randomizing data before radio transmission. the data is scrambled using a random sequence on t he transmit side and then descrambled on the receive side using the same sequence.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 25 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 the TRC103 packet handler provides a mechanism for scra mbling the packet payload. a 9-bit lfsr is used to generate a random sequence. the payload and the 16-bit crc checksum are xor?d with this random sequence as shown in figure 18. the data is descrambled on the receiver side by xoring with the same random se- quence. the scrambling/descrambling process is enabled by setting the pktcfg1e_scrmb_en[4] bit to 1.                    $   $          . * .   3 , . 1 ; ) ( % /   1 ' ) + 1 + % * . * ( & % $
   $        4   
     
               %                  
  5       
 6     (  
    !  #             figure 18 3.10 spi configuration interface the TRC103 contains two spi-compatible interfaces, one to read and write the configur ation registers, the other to read and write fifo data. both interfaces are confi gured in slave mode and share the same pins: sdo (spi slave data out), sdi (spi slave data in), and sck (serial clock). two pins are provided to select the spi con- nection. the nss_config pin allows access to the config uration registers and the nss_data pin allows access to the fifo. figure 19 shows a typical connection betw een a host microcontroller and the spi interface.      h & 2 * ! ( 3 , & 3 & % * , & ) ) + ,        >                                  ! ( 3 , & 3 & % * , & ) ) + ,   ( / % . )   & % % + 3 * ( & % 2 %        %      "  figure 19
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 26 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 a byte transmission can be seen as a rotate operation betwe en the value stored in an 8-bit shift register in the master device (host microcontroller) and the value stored in an 8-bit shift register in the transceiver. the sck line is used to synchronize both spi bit transfers. data is tr ansferred full-duplex from master to slave through the sdi line and from slave to master through the sdo line. the most significant bit is always sent first. in both directions the rising sck edge is used to sample a bit, and the falli ng sck edge shifts the bits through the shift register. the active low nss_config or nss_data signals are asserted by the master dev ice and should remain low during a byte transmission. the transmission is synchr onized by these nss_config or nss_data signals. while the nss_config or nss_data is set to 1, t he counters controlling transmission are reset. reception starts with the first clock cycle after the falling edge of nss_config or nss_data. if either signal goes high dur- ing a byte transmission the counters are reset and the byte must be retransmitted. the configuration interface is selected if nss_config is low even if the TRC103 is in buffered mode and nss_data is low (nss_config has priority). to configur e the transceiver two bytes ar e required. the first byte contains a 0 start bit, r/w information (1 = read, 0 = writ e), 5 bits for the address of the register and a 0 stop bit. the second byte contains the data to be sent in writ e mode or the new address to read from in read mode.                                   > = $ $ h (  g $ $ $ $ $ $ $ $                h (  g  + / ( 2 * + ,   8 8 , + 2 2 + <   + / ( 2 * + ,   . ) 0 +  ) 8   + / ( 2 * + ,   . ) 0 + %      "            ( % / ) +  6 * +   & % 4 ( / 0 , . * ( & %   + / ( 2 * + ,  = , ( * + figure 20 figure 20 shows the timing diagram for a single byte write sequence to the TRC103 through the spi configuration interface. note that nss_config must remain low duri ng the transmission of the tw o bytes (address and data). if it goes high after the first byte, then the next byte will be considered as an address byte. when writing more than one register successively, nss_config does not need to have a high-to-low transition between two write se- quences. the bytes are alternatively considered as an address byte followed by a data byte. the read sequence through the spi configuration interfac e is similar to the write sequence. the host microcon- troller sends the address during the first spi communication and then reads the data during a second spi com- munication. note that 0 bits can be input to the sdi during the second spi communication for a single byte read. figure 21 shows the timing diagram for a single byte read sequence from the TRC103 through the spi.                > = $ $ h (  g $ $ $ $ $ $ $ $                h (  g  + / ( 2 * + ,   8 8 , + 2 2  + / ( 2 * + ,   . ) 0 + %      "            ( % / ) +  6 * +   & % 4 ( / 0 , . * ( & %   + / ( 2 * + ,   + . 8 figure 21
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 27 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12                > = $ $ h (  g $ $ $ $ $ $ $ $                  " ( , 2 *   + / ( 2 * + ,   8 8 , + 2 2 " ( , 2 *   + / ( 2 * + ,   . ) 0 + %      "           ! 0 ) * (  ; 6 * +   & % 4 ( / 0 , . * ( & %   + / ( 2 * + ,   + . 8                > = $  + 3 & % 8   + / ( 2 * + ,   8 8 , + 2 2                > =  - ( , 8   + / ( 2 * + ,   8 8 , + 2 2                    + 3 & % 8   + / ( 2 * + ,   . ) 0 + figure 22 multiple configuration register reads are also possible by sending a series of register addresses into the spi port, as shown in figure 22. 3.11 spi data fifo interface when the transceiver is used in buffered or packet data mode, data is written to and read from the fifo through the spi interface. two interrupts, irq0 and ir q1, are used to manage the transfer procedure. when the transceiver is operating in buffered or packet data mode, the fifo interface is selected when nss_data is set to 0 and nss_config is set to 1. spi operations with the fifo are similar to operations with the configuration registers with two important exceptions. first, no addresses are used with the fifo, only data bytes are exchanged. second, nss_data must be toggled high and back low between data bytes when writing to the fifo or reading from the fifo. toggling nss_data indexes the access pointer to each byte in the fifo in lieu of using explicit addressing. figure 23 shows the ti ming diagram for a multiple-byte write sequence to the TRC103 during transmit, and figure 24 shows the timing for a multi-byte read sequence.                       $  h (  g $ $ $ $ $ $ $ $ h (  g $ $ $ $ $ $ $ $ " ( , 2 *  6 * +  = , ( * * + %  + 3 & % 8  6 * +  = , ( * * + % %                        . * .  = , ( * +  * &  "  "         $ h (  g figure 23                       h (  g  $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ " ( , 2 *  6 * +   + . 8  + 3 & % 8  6 * +   + . 8 %                        . * .   + . 8  4 , & 1  "  "         h (  g h (  g figure 24
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 28 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 4.0 configuration register memory map register names are based on the function name and address location for easy reference: 0x1f pgcfg1f pktcfg1e pktcfg1d 0x1c pktcfg1c 0x1b oscfg1b 0x1a txcfg1a syncfg19 syncfg18 syncfg17 0x16 syncfg16 rxcfg15 rxcfg14 rxcfg13 rxcfg12 rxcfg11 0x10 rxcfg10 irqcfg0f irqcfg0e 0x0d irqcfg0d mcfg0c mcfg0b mcfg0a mcfg09 mcfg08 mcfg07 mcfg06 mcfg05 mcfg04 mcfg03 mcfg02 mcfg01 0x00 mcfg00 table 12
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 29 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 4.1 main configuration registers (mcfg) power-up default settings are shown in bold: 0x00 - mcfg00 [default 0x28] name bits r/w description chip_mode 7,6,5 r/w transceiver chip mode: 000 sleep 001 stand-by 010 frequency synthesizer 011 receive 100 transmit 101, 100, 111 not used band 4,3 r/w frequency band: 00 902-915 mhz 01 915-928 mhz 10 950-960 mhz (863-870 mhz with alternate vco tank) 11 not used trim_band 2,1 r/w pll tune offset voltage (vco trim): 00 0 mv 01 60 mv 10 120 mv 11 180 mv rf_frequency 0 r/w selection between two rf frequencies as defined by synthrx, synthpx, and synthsx registers: 0 frequency 1 1 frequency 2 table 13 0x01 - mcfg01 [default 0x88] name bits r/w description fsk_ook 7,6 r/w tx/rx modulation: 00 reset 01 ook 10 fsk 11 not used mode 5 r/w enable data mode: 0 continuous 1 buffered rx_ook 4,3 r/w rx ook threshold mode: 00 fixed threshold 01 peak mode 10 avg mode 11 not used packet_hdl_en 2 r/w enable packet mode: 0 disabled ; mode selected by mode bit above 1 enabled if_gain 1,0 r/w gain (agc) on if chain in if amplifier: 00 maximum if gain 01 -4.5 db below maximum 10 -9 db below maximum 11 -13.5 db below maximum table 14
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 30 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 0x02 - mcfg02 [default 0x03] name bits r/w description freq_dev 7..0 r/w frequency deviation: f dev = f xtal /(32 (r+1)) where r is the freq_dev register value, f dev and f xtal are in khz, 0 r 255 freq_dev default = 3, f dev = 100 khz for f xtal = 12,800 khz table 15 0x03 - mcfg03 [default 0x07] name bits r/w description - 7 not used bit_rate 6..0 r/w br = f xtal /(64*(d + 1)), where d is the bit_rate value and bit rate br and f xtal are in khz 0 d 127 for fsk, 5 d 127 for ook bit_rate default = 7, br = 25 kb/s for f xtal = 12,800 khz table 16 0x04 - mcfg04 [default 0x0c] name bits r/w description ook_thresh 7..0 r/w ook fixed threshold or minimum thres hold in peak mode. default is 6 db. 00000000b 0 db 00000001b 0.5 db 00001100b 6 db 11111111b 127 db table 17 0x05 - mcfg05 [default 0x0f] name bits r/w description fifo_depth 7,6 r/w configures the size of the fifo: 00 16 bytes 01 32 bytes 10 48 bytes 11 64 bytes fifo_thresh 5..0 r/w number of bytes to be written in the fifo to activate the fifo_int_tx and fifo_int_rx interrupts. number of bytes = b + 1, where b is the register value. fifo_thresh default = 15, number of bytes = 16 table 18 0x06 - mcfg06 [default 0x77] name bits r/w description synthr1 7..0 r/w rf frequency 1, x counter r1 = 0x77 (01110111) for 915 mhz table 19 0x07 - mcfg07 [default 0x64] name bits r/w description synthp1 7..0 r/w rf frequency 1, y counter p1 = 0x64 (01100100) for 915 mhz table 20
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 31 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 0x08 - mcfg08 [default 0x32] name bits r/w description synths1 7..0 r/w rf frequency 1, z counter s1 = 0x32 (00110010) for 915 mhz table 21 0x09 - mcfg09 [default 0x74] name bits r/w description synthr2 7..0 r/w rf frequency 2, x counter r2 = 0x74 (01110100b) for 920 mhz table 22 0x0a - mcfg0a [default 0x62] name bits r/w description synthp2 7..0 r/w rf frequency 2, y counter p2 = 0x62 (01100010b) for 920 mhz table 23 0x0b - mcfg0b [default 0x32] name bits r/w description synths2 7..0 r/w rf frequency 2, z counter s2 = 0x32 (00110010b) for 920 mhz table 24 0x0c - mcfg0c [default 0x18] name bits r/w description - 7,6,5 not used pa_ramp 4,3 r/w rise/fall time control of power amplifier in ook mode: 00 3 s 01 8.5 s 10 15 s 11 23 s rx_current 2 r/w sets receive mode current level: 0 normal current 1 low current (suitable for most applications) 1,0 not used table 25
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 32 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 4.2 interrupt configurat ion registers (irqcfg) 0x0d - irqcfg0d [default 0x00] name bits r/w description rx_irq0 7,6 r/w irq0 source in receive: continuous data mode - 00 irq0 mapped to start pattern detect 01 irq0 mapped to rssi_irq 10,11 irq0 mapped to start pattern detect buffered data mode - 00 irq0 set to 0 01 irq0 mapped to write_byte 10 irq0 mapped to nfifoempy (also in standby mode) 11 irq0 mapped to start pattern detect packet data mode - 00 irq0 mapped to data_rdy 01 irq0 mapped to write_byte 10 irq0 mapped to nfifoempy (also in standby mode) 11 irq0 mapped to node address match if addrs_cmp is enabled 11 irq0 mapped to start pattern detect if addrs_cmp is not enabled rx_irq1 5,4 r/w irq1 source in receive mode. continuous data mode - 00 irq1 mapped to dclk 01,10,11 irq1 mapped to dclk buffered data mode - 00 irq1 set to 0 01 irq1 mapped to fifofull 10 irq1 mapped to rssi_irq 11 irq1 mapped to fifo_int_rx (also in standby mode) packet data mode - 00 irq1 mapped to crc_ok 01 irq1 mapped to fifofull (also in standby mode) 10 irq1 mapped to rssi_irq 11 irq1 mapped to fifo_int_rx (also in standby mode) tx_irq1 3 r/w irq1 source in transmit mode: continuous data mode - 0 or 1 irq1 mapped to dclk 0 or 1 irq0 is set to 0 buffered and packet data modes - 0 irq1 mapped to fifofull 1 irq1 is mapped to tx_stop note: irq0 mapped as follows for transmit mode: buffered data mode - irq0 mapped to nfifoempy packet data mode - irq0 mapped to fifo_int_tx if start_full = 0 irq0 mapped to nfifoempy if start_full = 1 fifofull 2 r fifo full (irq source) nfifoempy 1 r low when fifo empty (irq source) fifo_ovr 0 r/w/c fifo overrun error. write a 1 to this bit to reset it and clear the fifo. table 26
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 33 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 0x0e - irqcfg0e [default 0x01] name bits r/w description start_fill 7 r/w fifo fill mode selection: 0 fifo starts filling when start pattern is detected 1 fifo fills as long as start_det is 1 start_det 6 r/w/c start of fifo fill: start_fill = 0, goes high when start pattern detected. write a 1 to reset this bit and start pattern detect. start_fill = 1 0 stop filling fifo 1 start filling fifo tx_stop 5 r transmit state: 0 transferring bits to the tx modulator 1 last bit transferred to the tx modulator start_full 4 r/w buffered data mode: 0 start transmit when fifo is full (irq0 mapped to nfifoempy) 1 start transmit when nfifoempy = 1 (irq0 mapped to nfifoempy) packet data mode: 0 start transmit when bytes equal or greater than fifo_thresh value (irq0 mapped to fifo_thresh for fifo_int_tx) 1 start transmit when nfifoempy = 1 (irq0 mapped to nfifoempy) rssi_int 3 r/w enables sig_detect: 0 disable interrupt 1 enable interrupt sig_detect 2 r/w/c detects a signal above the rssi_thld: 0 signal lower than threshold 1 signal equal or greater than the rssi_thld level this bit must be cleared by writing a 1 to its location. pll_lock_st 1 r/w/c detects the pll lock status: 0 pll not locked 1 pll locked this bit latches high each time the pll locks and mu st be cleared by writing a 1 to its location. pll_lock_en 0 r/w enables the pll_lock signal on pin 23 0 pll_lock signal disabled, pin 23 set high 1 pll_lock signal enabled table 27 0x0f - irqcfg0f [default 0x00] name bits r/w description rssi_thld 7..0 r/w rssi threshold level for interrupt. rssi_thld default is 0x00 table 28
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 34 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 4.3 receiver configurat ion registers (rxcfg) 0x10 - rxcfg10 [default 0xa3] name bits r/w description lp_filt 7,6,5,4 r/w bandwidth of the low-pass filter. 0000 65 khz 0001 82 khz 0010 109 khz 0011 137 khz 0100 157 khz 0101 184 khz 0110 211 khz 0111 234 khz 1000 262 khz 1001 321 khz 1010 378 khz 1011 414 khz 1100 458 khz 1101 514 khz 1110 676 khz 1111 987 khz bw_filt 3,2,1,0 r/w cutoff frequency of the receiver fsk butterworth low-pass filters: f cbw = 200*(f xtal /12800)*(j + 1)/(f+1), where f cbw is the 3 db cutoff frequency of the butterworth filters in khz, j is the integer value of bw_filt with a range of 0 to 15, and f is the integer value of the bit pattern in rxcfg13 , which has a default value of 7. or upper cutoff frequency of the ook polyphase band-pass filters: f cpp = f opp + 200*(f xtal /12800)*(j + 1)/(f+1), where f cpp is the upper cutoff frequency of polyphase filters in khz , f opp is the center frequency of the ook polyphase filters in khz (see rxcfg11 below), f xtal is the crystal frequency in khz, j is the integer value of bw_filt with the usable range of 0 to 1, and f is the integer value of the bit pattern in rxcfg13 , which has a default value of 7. bw_filt default = 0011b, f cbw = 100 khz for a 12,800 khz crystal and rxcfg13 = 7 table 29 0x11 - rxcfg11 [default 0x38] name bits r/w description polyfilt 7,6,5,4 r/w center frequency of the polyphase filter: f opp = 200*(f xtal /12800)*(l + 1)/(f+1), where f opp is the center frequency of the ook polyphase filter in khz, f xtal is the crystal frequency in khz, l is the integer value of polyfilt, and f is the integer value of the bit pattern in rxcfg13 , which has a default value of 7 polyfilt default = 0011b, f opp = 100 khz for a 12,800 khz crystal and rxcfg13 = 7 pa_reg 3 r/w power amp step regulation mode: 0 regulation disabled 1 regulation enabled - 2,1,0 not used table 30
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 35 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 0x12 - rxcfg12 [default 0x18] name bits r/w description polyfilt_en 7 r/w polyphase filter enable: 0 polyphase filter disabled 1 polyphase filter enabled dclk_dis 6 r/w data and clock recovery enable: 0 enabled 1 disabled recog 5 r/w start pattern detect (recognition) enable: 0 disabled 1 enabled pat_sz 4,3 r/w start pattern size: 00 1 byte (syncgf16 byte) 01 2 bytes (syncgf16 and syncgf17 bytes) 10 3 bytes (syncgf16, syncgf17 and syncgf18 bytes) 11 4 bytes (syncgf16, syncgf17, syncgf18, and syncgf19 bytes) ptol 2,1 r/w start pattern bit-error tolerance limit: 00 0 errors 01 1 error 10 2 errors 11 3 errors - 0 - not used table 31 0x13 - rxcfg13 [default 0x07] name bits r/w description rfclkref 7..0 r/w reference clock counter/divider, f ref , for all digital circuitry: f ref = f xtal /(f+1), 0 f 255, where f is the register value, f ref and f xtal are in mhz rfclkref default = 0x07 (00000111b), f ref = 1. 6 mhz for f xtal = 12.8 mhz table 32 0x14 - rxcfg14 [default 0x00] name bits r/w description rssi 7..0 r rssi output table 33
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 36 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 0x15 - rxcfg15 [default 0x00] name bits r/w description ook_step 7,6,5 r/w reduction of max rssi level in peak mode for ook: 000 0.5 db 001 1.0 db 010 1.5 db 011 2.0 db 100 3.0 db 101 4.0 db 110 5.0 db 111 6.0 db ook_length 4,3,2 r/w ook peak mode update period: 000 once per chip period 001 once per 2 chip periods 010 once per 4 chip periods 011 once per 8 chip periods 100 2x per chip period 101 4x per chip period 110 8x per chip period 111 16x per chip period ook_iir_coeff 1,0 r/w ook iir filter coefficients in avg mode. each 2- s filter stage has two programmable sets of coef- ficients - f cas is the cutoff frequency for short averaging and f cal is the cutoff frequency for long averaging (see section 6.3.2): 00 f cas = chip rate / 8* (sets 1 and 1) 01 f cas = chip rate / 8* (sets 1 and 2) 10 f cal = chip rate / 32* (sets 2 and 1) 11 f cal = chip rate / 32* (sets 2 and 2) table 34
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 37 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 4.4 start pattern configur ation registers (syncfg) 0x16 - syncfg16 [default 0x00] name bits r/w description sync_pat3 7..0 r/w start pattern most significant byte. this byte is s ent first if one or more start pattern bytes are used. default: 00000000b table 35 0x17 - syncfg17 [default 0x00] name bits r/w description sync_pat2 7..0 r/w start pattern byte. this byte is sent second if two or more start pattern bytes are used. default: 00000000b table 36 0x18 - syncfg18 [default 0x00] name bits r/w description sync_pat1 7..0 r/w start pattern byte. this byte is sent third if three or more start pattern bytes are used. default: 00000000b table 37 0x19 - syncfg19 [default 0x00] name bits r/w description sync_pat0 7..0 r/w start pattern least significant byte . this byte is sent last if four start pattern bytes are used. default: 00000000b table 38 4.5 transmitter configur ation registers (txcfg) 0x1a - txcfg1a [default 0x70] name bits r/w description txinterpfilt 7,6,5,4 r/w transmitter anti-aliasing filter cutoff frequency: f ctx = 200*(f xtal /12800)*(k + 1)/(f+1), where f ctx is the 3 db bandwidth of the transmitter anti- aliasing filters in khz, f xtal is the crystal frequency in khz, k is the integer value of txinterpfilt, and f is the integer value of the bit pattern in rxcfg13 , which has a default value of 7. txinterpfilt default = 0111b, f ctx = 200 khz for f xtal = 12800 khz and rxcfg13 = 7 pout 3,2,1 r/w transmitter output power (approx 3 db steps): 000 max 001 -3 db 010 -6 db 011 -9 db 100 -12 db 101 -15 db others not used - 0 not used table 39
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 38 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 4.6 oscillator configur ation register (oscfg) 0x1b - oscfg1b [default 0xbc] name bits r/w description clkout_en 7 r/w buffered clock output enable: 0 disabled 1 enabled clk_freq 6..2 r/w buffered clock output frequency on pin clkout: f bco = f xtal / (2* m), where f bco is the buffered clock output frequency in khz, f xtal is the crystal frequency in khz and m is the value of clk_freq except if clk_freq is 0, f bco = f xtal clk_freq default: 01111, f bco = 426.67 khz for a 12,800 khz crystal - 1,0 not used table 40 4.7 packet handler configur ation registers (pktcfg) 0x1c - pktcfg1c [default 0x00] name bits r/w description man_en 7 r/w manchester encodi ng/decoding enable: 0 manchester encoding/decoding off 1 manchester enc oding/decoding on pkt_len 6..0 r/w packet length: the payload size in fixed length mode, the maximum length byte value in variable length mode, and the maximum length byte value in extended variable length packet mode. pkt_len default: 0000000b table 41 0x1d - pktcfg1d [default 0x00] name bits r/w description node_addrs 7..0 r/w node address used in filtering received packets in a network. table 42
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 39 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 0x1e - pktcfg1e [default 0x40] name bits r/w description pkt_mode 7 r/w packet mode: 0 fixed length packet mode 1 variable length packet mode preamb_len 6,5 r/w preamble length: 00 1 byte 01 2 bytes 10 3 bytes 11 4 bytes scrmb_en 4 r/w dc-balanced scrambling enable: 0 scrambling off 1 scrambling on crc_en 3 r/w cyclic redundancy check processing enable: 0 crc off 1 crc on addrs_cmp 2,1 r/w address comparison for received packets: 00 no comparison 01 compare with node_addrs only 10 compare with node_addrs and constant 0x00 11 compare with node_addrs and constants 0x00 or 0xff crc_stat 0 r calculate crc and check result: 0 crc failed 1 crc successful this bit must be cleared by writing a 1 to its location. table 43 page configuration register (pgcfg) 0x1f - pgcfg1f [default 0x00] name bits r/w description crcclr_auto 7 r/w automatically clear fifo if crc fails (receive only): 0 clear fifo if crc fails 1 do not clear fifo rnw_fifo 6 r/w selects read or write fifo while in standby mode: 0 write fifo 1 read fifo - 5,4,3,2 not used page 1,0 r/w register page: 00 page 0 selected 01 not used 10 not used 11 not used table 44
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 40 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 5.0 electrical characteristics absolute maximum ratings symbol parameter notes min max units v dd supply voltage -0.3 3.7 v t stg storage temperature -55 +125 c esd jedec 22-a114 class rating 1,2 v rf in input level 0 dbm table 45 recommended operating range symbol parameter notes min max units v dd positive supply voltage 2.1 3.6 v top operating temperature -40 +85 c rfin input level - 0 dbm notes: 1. pins 3,4,5,27,28,29,31 comply with class 1a. 2. all other pins comply with class 2. table 46 5.1 dc electrical characteristics minimum/maximum values are valid over the recommended operating range v dd = 2.1-3.6v. typical conditions: t o = 25c; v dd = 3.3 v. the electrical specifications given below are valid for a crystal having t he specifications given in table 3. parameter sym notes min typ max units test condition sleep mode current i s 0.1 1 a standby mode current i sb crystal oscillator running 55 80 a synthesizer mode current i fm crystal oscillator and synthesizer running 1.3 1.7 ma receiver mode current i rx all receiver blocks running 3.5 4.0 ma mcfg0c bit 2 = 0 low power receive mode current i rxl all receiver blocks running 3.3 3.6 ma mcfg0c bit 2 = 1 transmitter mode current i tx pout = +10 dbm 25 30 ma power measured at ic output pout = +1 dbm 16 21 reset threshold v por 1.37 v digital input low level vil 0.2*v dd v digital input high level vih 0.8*v dd v digital input current low iil -1 1 a vil = 0 v digital input current high iih -1 1 a vih = v dd , v dd = 3.3 v digital output low level vol 0.1*v dd v iol = -1 ma digital output high level voh 0.9*v dd v ioh = +1 ma table 47
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 41 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 5.2 ac electrical characteristics minimum/maximum values are valid over the recommended operating range v dd = 2.1-3.6v. typical conditions: t o = 25c; v dd = 3.3 v. the electrical specifications given below are valid for a crystal having t he specifications given in table 3. receiver parameter sym min typ max units test notes rf input impedance 150 ohms differential input rf input power 0 dbm above 0 dbm receiver input may be damaged receiver noise figure 8 db ic noise figure fsk receiver bandwidth 50 250 khz butterworth filter mode ook receiver bandwidth 50 400 khz polyphase filter mode receiver sensitivity* -112 -104 -108 -110 -102 -106 dbm fsk: 10 -3 ber, 2 kb/s, bw = 100 khz, f dev = 50 khz fsk: 10 -3 ber, 25 kb/s, bw = 100 khz, f dev = 50 khz ook: 10 -3 ber, 2 kb/s blocking immunity* 53 db signal strength of unmodulated blocking signal relative to desired signal, 1 mhz offset co-channel rejection* -12 db signal strength of modulated co-channel signal relative to desired signal adjacent channel rejection* 38 42 db signal strength of adjacent signal relative to desired signal, 600 khz offset, modulation same as desired signal fsk bit rate 1.56 200 kb/s nrz ook bit rate 1.56 32 kb/s nrz rssi resolution 0.5 db rssi accuracy 3 db rssi dynamic range 63 70 db at maximum if gain at minimum if gain local oscillator (lo) emission -65 dbm *receiver in-circuit performance with rfm recommended saw filter and crystal. table 48 transmitter parameter sym min typ max units test notes rf output impedance 150 ohms differential output maximum rf output power* +11 dbm including saw filter insertion loss rf output power range* 15 db programmable reference spur* -46 dbc below carrier power, no modulation 2 nd & 3 rd harmonic* -40 dbm no modulation 4 th and higher harmonics* -40 dbm no modulation phase noise -112 -105 dbc/hz at 600 khz offset fsk deviation 33 50 200 khz programmable *transmitter in-circuit performance wi th rfm recommended saw filter and crystal. table 49
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 42 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 timing parameter sym min typ ma x units test condition tx to rx switch time 250 s osc & freq synthesizer running rx to tx switch time 90 s osc & freq synthesizer running sleep to rx 5 ms spi command to rx sleep to tx 5 ms spi command to tx sleep to standby 1.5 5 ms spi command to oscillator running standby to synthesizer lock 500 s oscillator running standby to rx 500 s oscillator running standby to tx 500 s oscillator running freq hop time 180 400 s 200 khz hop tx rise/fall time 3 s programmable t sudata 2 - - s setup and hold time for tx data in continuous mode table 50 pll characteristics parameter sym min typ ma x units test condition crystal oscillator frequency 10 12.8 15 mhz pll lock time, 10 khz settle 180 s 200 khz step 200 s 1 mhz step 250 s 5 mhz step 280 s 10 mhz step 320 s 20 mhz step frequency synthesizer step 12.5 khz varies depending on frequency crystal load capacitance 13.5 15 16.5 pf crystal oscillator start-up time 1.5 5 ms from sleep mode synthesizer wake-up time 0.5 0.8 ms crystal running, settling time to 10 khz frequency range 863 902 950 - - - 870 928 960 mhz table 51 spi timing parameter sym min typ max units description sck for spi_config - - 6 mhz max clock freq sck for spi_data - - 1 mhz max clock freq spi_config t su_sdi 250 - - ns spi_config setup time spi_data t su_sdi 312 - - ns spi_data setup time t sscfg_l 500 - - ns nss_config low to sck rising edge. sck falling edge to nss_config high. t ssdat_l 625 - - ns nss_data low to sck rising edge. sck falling edge to nss_data high. t sscfg_h 500 - - ns nss_config rising to falling edge t ssdat_h 625 - - ns nss_data rising to falling edge table 52
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 43 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 6.0 TRC103 design in steps designing a TRC103 into an application consists of seven steps: 1. select the frequency band for operation: 863-870, 902-928 or 950-960 mhz. this allows the frequency- specific hardware components for the TRC103 to be determined. these include the saw filter and its matching components and the vco tank inductors. 2. select the modulation type, fsk or ook, and the rf data bit rate. this allows the configuration of the TRC103 on-chip filters, the data and clock recovery circuitry and related parameters to be determined. 3. select the radio regulation under which to operate. this allows the transmitter power level to be deter- mined. 4. select the frequency channel or channels to be us ed. this allows the configuration values for the fre- quency synthesizer to be tabulated. 5. select the operating mode to be used: continuous , buffered or packet. for continuous mode, determine if the TRC103 internal data and clock recovery feature will be used. this allows the configuration of a num- ber of mode-related registers in the TRC103 to be det ermined. for packet or buffered mode, select the data encoding, preamble length, start pattern, fifo length and the mapping of the TRC103 host proces- sor interrupts. for packet mode, sele ct packet filtering options (addre ss, crc, etc.). from these deci- sions, values for the related configuratio n registers in the tr c103 can be determined. 6. if needed, prepare a battery power management strat egy and determine when various system radios may be configured for low power consumption. 7. based on the selections and determinations above, co mpile the configuration data to be stored in the host microcontroller to suppo rt TRC103 operation. the details of each of these steps are discussed below. 6.1 determining frequency specific hardware component values 6.1.1 saw filters and related component values rfm offers a low-loss saw rf filter for each of the TRC103?s operating bands. the part numbers for these saw filters and the values of the related tuning components are given in table 53 (see figure 2 for component loca- tion). the saw filters are designed to take advantage of the TRC103?s differential output to achieve low insertion loss and high out-of-band rejection. band 1 saw filter l1 l2 & l3 c4 l7 l8 c16 c17 863-870 mhz rf3501e bead 2 8.2 nh dnp 2.7 nh 3.3 nh 9.0 pf 1.8 pf 902-928 mhz rf2040e bead 2 8.2 nh dnp 4.7 nh 4.7 nh 6.8 pf 1.5 pf 950-960 mhz rf3601e bead 2 6.8 nh dnp 100 nh 3.9 nh dnp 1.5 pf 1. xtl1020p crystal recommended as frequency reference for all operating bands. 2. bead is fair-rite 2506033017y0 or equivalent. table 53 6.1.2 voltage controlled o scillator component values the TRC103 vco requires four external components for ope ration, two tank circuit i nductors and two power sup- ply decoupling capacitors. it is important to use high-q ch ip inductors in the tank circuit. this assures low phase noise vco operation and minimum interference from signals near the TRC103?s operating frequency due to
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 44 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 phase noise reciprocal mixing. the two tank circuit indu ctors have the same value which depends on the band of operation and the pcb layout. typical values are given in table 54 (location of l5 & l6 shown in figure 2): band l5 & l6 tolerance 863-870 mhz 6.8 nh 5% 902-928 mhz 5.6 nh 5% 950-960 mhz 5.6 nh 5% table 54 the tank circuit inductors should be mounted close to their ic pads with the long axis of the coil at right angles to the edge of the ic where the pads are located. the decoupling capacitors should be positioned on each side of the tank circuit inductors. other rf chokes and coils shou ld be spaced somewhat away from the tank inductors and positioned at right angles to minimize coupling. vco frequency centering is checked by looking at th e voltage between pads 6 and 7. the voltage should be 150 50 mv when the TRC103 is in transmit mode at a fr equency near the center of the operating band. vco fre- quency centering can be adjusted by ch anging the value of the tuning inductor s and/or adjusting the vco trim bits 1 and 2 in configuration register mcfg00 . the trim bits adjust the tuning voltage in increments of about 60 mv. increasing the value of the tuning inductors in creases the tuning voltage between pads 6 and 7. 6.2 determining configuration values for fsk modulation 6.2.1 bit rate related fsk configuration values the TRC103 supports rf bit rates (data rates) from 1.5625 to 200 kb/s for fsk modulation. there are several considerations in choosing a bit rate. the sensitivity of the TRC103 decreases with increasing data rate. a bit rate should be chosen that is adequate but not higher than the application requires. the exceptions to this rule are when the TRC103 is operated as a frequency hopping or dts spread spectrum transceiver. in the case of fre- quency hopping, running at a higher bit rate will allow a hi gher channel hopping rate, which provides more robust operation in a crowded band in trade-off for less range under quiet band conditions. dts signal bandwidth, which can be achieved using 133 khz deviation, allows the t rc103 to be operated at full rated output power under fcc 15.247 and similar regulations. the TRC103 rf bit rate is set by the value of the byte loaded in mcfg03 . for the standard crystal frequency of 12.8 mhz: br = 12800/(64*(d + 1)), with d in the range of 0 to 127 where br is the bit rate in kb/s and d is the integer stored in mcfg03 . this configuration value supports both the data and clock recovery circuit in the receiver and the bit rate clocking in the transmitter modulator. solving the equation above for d: d = (12800 - 64*br)/64*br d must be an integer value, so br is limited to 128 disc rete values. if the value of d given in the above equation is not an integer for your desired bit rate, round the val ue of d down to the nearest integer. you can then calculate the nearest available bit rate equal to or greater than your desired bit rate. selection of the rf data rate allows a suitable fsk devia tion to be determined. this, in turn, allows the configura- tion value for the anti-aliasing filters in the transmitter and the configuration values for the r-c and butterworth low-pass filters in the receiver to be determined.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 45 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 the minimum required deviation for good TRC103 fsk performance is: f dev = br where f dev is the deviation in khz and br is the bit rate in kb/s. specific to the TRC103, the minimum recom- mended deviation is 33 khz, even at low data rates. f dev is configured with an integer r stored in mcfg02 . for the standard crystal frequency of 12.8 mhz: f dev = 12800/(32*(r + 1)), with the useable range of r 1 to 11 where f dev is the deviation in khz. so lving the equation above for r: r = (12800 - 32*f dev )/32*f dev r must be an integer value, so f dev is limited to 11 discrete values. if the value of r given in the above equation is not an integer for your desired deviation, round the val ue of r down to the nearest integer and use this value to meet or exceed the minimum required deviation for the bit rate you are using. once br and f dev have been determined, the bandwidths and related configuration values for the TRC103 filters can be determined. the recommended 3 db bandwidth (cuto ff frequency) for the transmitter anti-aliasing filters is: f ctx = 3*f dev + 1.5*br where f ctx is the 3 db bandwidth of the trans mitter anti-aliasing filters in khz, f dev is the frequency deviation in khz and br is the bit rate in kb/s. f ctx is configured with bits 7..4 in txcfg1a and the byte in rxcfg13 . for the standard crystal frequency of 12.8 mhz: f ctx = 200*(k + 1)/(f+1), with k in the range of 0 to 15 where f ctx is the 3 db bandwidth of the transmitter anti-aliasing f ilters in khz, k is the integer value of the bit pat- tern in txcfg1a bits 7..4, and f is the integer value of the bit pattern in rxcfg13 , which has a default value of 7. assuming this default value of f is used, the equation for determining k is: k = (f ctx - 25)/25 k must be an integer value, so f ctx is limited to 16 discrete values. if t he value of k given in the above equation is not an integer for your desired deviati on, round the value of k down to the nearest integer and use this value to set the bandwidth of the transmitter ant i-aliasing filters. for operation at 90 kb/s and above, use a value of 15 for k. the recommended 3 db bandwidth for the receiver butterworth filters is: f cbw = 2*f dev + br where f cbw is the 3 db bandwidth of the butterworth filters in khz, f dev is the frequency deviation in khz and br is the bit rate in kb/s. this equation assumes use of t he high accuracy, low drift xtl1020p crystal. if an alterna- tive crystal is used, add ? the expected drift due to temperature and aging to the equation above. f cbw is config- ured with bits 3..0 in rxcfg10 and the byte in rxcfg13 . for the standard crystal frequency of 12.8 mhz: f cbw = 200*(j + 1)/(f+1), with j in the range of 0 to 15 where f cbw is the 3 db bandwidth of the receiver butterworth filt ers in khz, j is the integer value of the bit pattern in rxcfg10 bits 3..0, and f is the integer value of the bit pattern in rxcfg13 , which has a default value of 7. assuming this default value of f is used, the equation for determining j is: j = (f cbw - 25)/25
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 46 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 j must be an integer value, so f cbw is limited to 16 discrete values. if the value of j given in the above equation is not an integer for your deviation and bit rate, round the value of j down to the nearest integer and use this value to set the bandwidth of the receiver bu tterworth filters for the bit rate you are using. for operation at 133 kb/s and above, use a value of 15 for j. the recommended 3 db bandwidth for the receiver r-c filters is: f crc = 3.25*f cbw where f crc and f cbw are in khz. the bandwidth of f crc is set by bits 7..4 in rxcfg10 . the relationship of the r- c filter bandwidth to the integer value in rxcfg10 bits 7..4 is given in table 55. where the calculated value for f crc falls between table values, use the higher table value. for operation at 100 kb/s and above, use the 987 khz r-c filter bandwidth. pattern of bits 7..4 r-c filter bandwidth 0000 65 khz 0001 82 khz 0010 109 khz 0011 137 khz 0100 157 khz 0101 184 khz 0110 211 khz 0111 234 khz 1000 262 khz 1001 321 khz 1010 378 khz 1011 414 khz 1100 458 khz 1101 514 khz 1110 676 khz 1111 987 khz table 55 6.2.2 determining transmitter power configuration values european etsi en 300 220-1 regulates unlicensed fixed-frequency and fhss radio operation in the 863- 870 mhz band. a TRC103 transmitter power setting of 10 dbm can be used anywhere in this band, operating on either fixed-frequency or fhss. refer to en 300 220-1 for additional details. fcc 15.247 and canadian rss-210 a8.1 regulate unlic ensed fhss radio operation in the 902-928 mhz band. the TRC103?s maximum transmitter power setting of 11 dbm can be used under both regulations. fcc 15.249 and canadian rss-210 a2.9 regulate fixed- frequency unlicensed radio operation in the 902-928 mhz band. under 15.249, the allowed transmitter field strength measured at 10 ft is 50,000 v/m. this level equates to a transmitter power level of approximately 1 dbm for a 1/4 wave antenna of typical efficiency. the relationship of the transmitter power level to the integer value in txcfg1a bits 3..1 is given in table 56. there are six available power settings (approximate):
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 47 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 pattern of bits 3..1 transmitter power 000 11 dbm 001 8 dbm 010 5 dbm 011 2 dbm 100 -1 dbm 101 -4 dbm table 56 the highest power setting allowed is usually chosen unl ess the application operates at short range and minimum dc power consumption is critical. the 950-960 mhz band is a developing rfid allocation where regulations are still under refinement. consult the latest regulations for this band when developing a 950-960 mhz application. 6.3 determining configuration values for ook modulation 6.3.1 bit rate related ook configuration values the TRC103 supports rf bit rates (data rates) from 1.5625 to 33.33 kb/s for ook modulation. as with fsk mod- ulation, there are several considerations in choosing an ook data rate. the sensitiv ity of the TRC103 decreases with increasing bit rate. a bit rate should be chosen that is adequate but not higher than the application requires. the exceptions to this rule are when the TRC103 is o perated as a frequency hopping spread spectrum transceiv- er. in the case of frequency hopping, running at a higher bit rate will allow a higher channel hopping rate, which provides more robust operation in a crowded band in trade-off for less range under quiet band conditions. the TRC103 rf bit rate is set by the value of the byte loaded in mcfg03 . for the standard crystal frequency of 12.8 mhz: br = 12800/(64*(d + 1)), with the usable range of d for ook 5 to 127 where br is the bit rate in kb/s and d is the integer stored in mcfg03 . this configuration value supports both the data and clock recovery circuit in the receiver and the bit rate clocking in the transmitter modulator. solving the equation above for d: d = (12800 - 64*br)/64*br d must be an integer value, so br is limited to 123 disc rete values for ook. if the value of d given in the above equation is not an integer for your desired bit rate, rou nd the value of d down to t he nearest integer. you can then calculate the nearest available bit rate equal to or greater than your desired bit rate. in ook mode, the second if frequency f if2 is normally set to 100 khz. the discussion in the rest of this section assumes f if2 is 100 khz. once br and f if2 have been determined, the bandwidths and related configuration values for the TRC103 filters can be determined. the recommended 3 db bandwidth for the transmitter anti-aliasing filters is: f ctx = 3*f if2 = 300 khz f ctx is configured with bits 7..4 in txcfg1a and the byte in rxcfg13 . for the standard crystal frequency of 12.8 mhz: f ctx = 200*(k + 1)/(f+1), with k in the range of 0 to 15 where f ctx is the 3 db bandwidth of the transmitter anti-aliasing f ilters in khz, k is the integer value of the bit pat- tern in txcfg1a bits 7..4, and f is the integer value of the bit pattern in rxcfg13 , which has a default value of 7. assuming this default value of f is used, the equation for determining k is:
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 48 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 k = (f ctx - 25)/25 = 11 for f ctx = 300 khz for ook operation, the receiver filters are c onfigured as polyphase band-pass filters by setting rxcfg12 bit 7 to 1. the center frequency of the polyphase filters is set to 100 khz to match the second if frequency. the center frequency, f opp , is configured with bits 7..4 in rxcfg11 and the byte in rxcfg13 . for the standard crystal fre- quency of 12.8 mhz: f opp = 200*(l + 1)/(f+1), with l in the range of 0 to 15 where f opp is the center frequency of the ook polyphase filter in khz, l is the integer value of the bit pattern in rxcfg11 bits 7..4, and f is the integer value of the bit pattern in rxcfg13 , which has a default value of 7. as- suming this default value of f is used, the equation for determining l is: l = (f opp - 25)/25 = 3 for f opp = 100 khz the recommended upper cutoff frequency for t he receiver polyphase band-pass filters is: f cpp = f opp + br where f cpp is the upper cutoff frequency of the polyphase filters in khz and br is the bit rate in kb/s. this equa- tion assumes use of the high accuracy, low drift xtl1020p cr ystal. if an alternative crystal is used, add ? the ex- pected drift due to temperature and aging to the equation above. f cpp is configured with bits 3..0 in rxcfg10 and the byte in rxcfg13 . for the standard crystal frequency of 12.8 mhz: f cpp = 100 + 200*(j + 1)/(f+1), with the usable range of j 0 to 1 where f cpp is the upper cutoff frequency of the receiver ook polypha se filter in khz, j is the integer value of the bit pattern in rxcfg10 bits 3..0, and f is the integer value of the bit pattern in rxcfg13 , which has a default value of 7. assuming this default value of f is used, the equation for determining j is: j = (f cpp - 125)/25 j must be an integer value, so f cpp is limited to 2 discrete values: 125 khz and 150 khz. choose the value of j that provides the f ccp value that is nearest to the value calculated for the bit rate you are using. the recommend- ed 3 db bandwidth for the receiver r-c filters is: f crc = 3.25*f cpp where f crc and f cpp are in khz. the bandwidth of f crc is set by bits 7..4 in rxcfg10 . the relationship of the r- c filter bandwidth to the integer value in rxcfg10 bits 7..4 is given in table 57. the matching values for the 125 and 150 khz f ccp values are shown in bold. pattern of bits 7..4 r-c filter bandwidth 0000 65 khz 0001 82 khz 0010 109 khz 0011 137 khz 0100 157 khz 0101 184 khz 0110 211 khz 0111 234 khz 1000 262 khz 1001 321 khz 1010 378 khz 1011 414 khz 1100 458 khz
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 49 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 pattern of bits 7..4 r-c filter bandwidth 1101 514 khz 1110 676 khz 1111 987 khz table 57 6.3.2 ook demodulator related configuration values ook demodulation in the TRC103 is accomplished by compar ing the rssi to a threshold value. an rssi value greater than the threshold is ?sliced? to a logic 1, and an r ssi value equal or less than the rssi value is sliced to a logic 0. the TRC103 provides three threshold options - fixed threshold, average-referenced threshold, and peak-referenced threshold. mcfg01 bits 4..3 select the ook threshold as shown in table 58: pattern of bits 4..3 threshold 00 fixed 01 peak referenced 10 average referenced 11 not used table 58 the configuration settings for each of these threshold options depend directly or indirectly on the bit rate. the fixed-threshold value is configured in mcfg04 bits 7..0. the fixed threshold can be adjusted in 0.5 db incre- ments over a range of 128 db. also, the gain of the if c an be adjusted over a range of 13.5 db to reduce the rssi value under no signal conditions. mcfg01 bits 1..0 select the if gain as shown in table 59: pattern of bits 1..0 if gain 00 maximum 01 -4.5 db 10 -9.0 db 11 -13.5 db table 59 the useable threshold setting depends on the rf operating ban d, the bandwidths of the re ceiver filters, the rf noise generated by host circuitry, the rf noise genera ted in the application environment, and the antenna effi- ciency. the fixed threshold is adjusted heuristically by incrementing the threshold wh ile monitoring the data output pin with an oscilloscope. the threshold is adjusted upward under no signal conditions until noise spikes on the data output are reduced to an average of one spike every fi ve or more seconds. because the fixed threshold has no automatic adjustment capability, it should only be used in applications where incidental rf noise generators such as pcs, switchgear, etc., are not present. the average-referenced threshold is generated by passing the rssi signal through a low-pass filter. two cutoff frequencies can be configured for this filter. this selection is done with rxcfg15 bit1. a 0 value selects f cas and 1 value selects f cal : f cas = br/(8* ) = 0.04*br and f cal = br/(32* ) = 0.01*br where f cas and f cal are in khz and br is in kb/s. f cas is used when a sequence of received bits of the same value is limited to 8, and f cal is used when a sequence of bits of the same value is limited to 32. an adequately long 1-0-1-0? preamble must be transmitted to center the threshold for each cutoff frequency. a preamble of at
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 50 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 least 24 bits is recommended for f cas , and a preamble of at least 48 bits is recommended for f cal . for most average-referenced threshold applications, f cas should be used in conjunction with a mechanism to avoid trans- mitting a long sequence of bits of the same value, such as the TRC103?s data scrambling or manchester encod- ing options. the peak-referenced threshold is generated from the r ssi signal using a fast attack, slow decay peak detector emulation. the slicer threshold is immediately set to 6 db below the peak value of the rssi signal anytime the rssi value exceeds the threshold by 6 db. the threshol d then decays by a configurable db step when a configu- rable interval passes without the rssi signal peaking 6 db above the threshold. the decay step is configured with rxcfg15 bits 7..5 as shown in table 60: pattern of bits 7..5 decay step 000 0.5 db 001 1.0 db 010 1.5 db 011 2.0 db 100 3.0 db 101 4.0 db 110 5.0 db 111 6.0 db table 60 the decay interval is configured with rxcfg15 bits 4..2 as shown in table 61: pattern of bits 4..2 decay interval 000 once per chip 001 once per 2 chips 010 once per 4 chips 011 once per 8 chips 100 twice per chip 101 four times per chip 110 8 times per chip 111 16 times per chip table 61 the chip period t cp is equal to the bit period except when manchest er encoding is used. for manchester encod- ing, the chip period is equal to ? the bit period: t cp = 1/br without manchester encoding, t cp = 1/(2*br) with manchester encoding where t cp is in ms and br is in kb/s. the default values of 0.5 db per decay step and 1 decay interval per chip provide a good starting point for most applications. for application environments that contain pulse noise, such as operation in a band where other fhss systems are operat ing, using manchester encoding and decreasing the decay interval to twice or four time s per chip and/or increasi ng the decay step to 1 db will reduce the ?blinding? effect of pulse noise. multipath flutter tolerance is al so improved by using manchester encoding and decreasing the decay interval and/or incr easing the decay step size. 6.3.3 ook transmitter related configuration values mcfg0c bits 4..3 allow the rise and fall time of the power amplifier regulator to be adjusted. using the default component values for r6 and c5 as shown in figure 2, the rise and fall times for the power amplifier regulator and the ook modulation are given in table 62:
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 51 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 pattern of bits 4..3 regulator rise/fall times ook rise/fall time 00 3/3 s 2.5/2 s 01 8.5/8.5 s 5/3 s 10 15/15 s 10/6 s 11 23/23 s 20/10 s table 62 it is generally a good practice to set the ook rise and fall time to about 5% of a bit period to avoid excessive modulation bandwidth: t ook = 50/br where t ook is the nominal 5% ook rise/fall time in s and br is the bit rate in kb/s. at low ook data rates the 20/10 s rise/fall times given in t he table above are satisfactory. when ope rating in the 863 - 870 mhz band under etsi en300 220-1 regulations, check the modulation bandwidt h carefully at bit rates above 8 kb/s to confirm compliance. for operation in certain 863 - 870 mhz subbands, the required rise/fall time may be greater than 5%. 6.4 frequency synthesizer channe l programming for fsk modulation when using a standard 12.8 mhz reference crystal, the fsk rf channel frequency is: f rf = 14.4*(75*(p + 1) + s)/(r + 1), with p and s in the range 0 to 255, r in the range 64 to 169 where f rf is in mhz, and p, s, and r are divider integers with s less than (p + 1). there are two sets of three registers that hold the values of p, s and r: register divider parameter mcfg06 r1 mcfg07 p1 mcfg08 s1 mcfg09 r2 mcfg0a p2 mcfg0b s2 table 63 mcfg00 bit 0 selects the register set to use for the fr equency synthesizer. a 0 value selects register set mcfg06 - mcfg08 and a 1 value selects register set mcfg09 - mcfg0b . in addition, mcfg00 bits 4..3 select the oper- ating band as follows: mcfg00 bits 4..3 band 10 863 - 870 mhz 00 902 - 915 mhz 01 915 - 928 mhz 10 950 - 960 mhz 11 not used table 64
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 52 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 the dual register set allows a new frequency to be comple tely entered in one register set while operating on the other register set. it is important to load all three divider pa rameters into a register set before switching control to it. otherwise, a transient out-of-band frequency shift can occur. the dual register set facilitates fhss operation, as the operating frequency for the next hop can be loa ded anytime during the current hop interval, making this programming task less time critical. the values of p, s and r for fsk operation on several common frequencies are given in table 65. software for determining p, s and r values for any in-band frequency is provided with the TRC103 development kit. configuration 868.3 mhz 915.0 mhz 955.0 mhz mcfg00 bits 4..3 10 01 10 p 106 100 62 s 55 50 50 r 133 119 71 table 65 6.5 frequency synthesizer channe l programming for ook modulation when using a standard 12.8 mhz reference crystal the rf channel frequency for ook receive is: f txrf = (14.4*(75*(p + 1) + s)/(r + 1)) - f dev , with p, s in the range 0 to 255, r in the range of 64 to 169 where f txrf and transmitter deviation frequency f dev are in mhz, and p, s, and r are divider integers where s must be less than (p+1). an f dev value of 0.1 mhz is normally used, which must match the receiver low if fre- quency f if2 . there are two sets of three register s that hold the values of p, s and r: register divider parameter mcfg06 r1 mcfg07 p1 mcfg08 s1 mcfg09 r2 mcfg0a p2 mcfg0b s2 table 66 mcfg00 bit 0 selects the register set to use for the fr equency synthesizer. a 0 value selects register set mcfg06 - mcfg08 and a 1 value selects register set mcfg09 - mcfg0b . in addition, mcfg00 bits 4..3 select the oper- ating band as follows: mcfg00 bits 4..3 band 10 863 - 870 mhz 00 902 - 915 mhz 01 915 - 928 mhz 10 950 - 960 mhz 11 not used table 67 the dual register set allows a new frequency to be comple tely entered in one register set while operating on the other register set. it is important to load all three divider pa rameters into a register set before switching control to it. otherwise, a transient out-of-band frequency shift can occur. the dual register set facilitates fhss operation, as the operating frequency for the next hop can be loa ded anytime during the current hop interval, making this
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 53 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 programming task less time critical. the values of p, s and r for ook receive operation on several common frequencies are given in table 68 for a 0.1 mhz f if2 . software for determining p, s and r values for any in-band frequency is provided with the TRC103 development kit. configuration 868.3 mhz 915.0 mhz 955.0 mhz mcfg00 bits 4..3 10 01 10 p 85 121 126 s 63 1 26 r 107 143 143 table 68 the rf channel frequency for ook transmit is: f rxrf = (14.4*(75*(p + 1) + s)/(r + 1)) - f if2 , with p, s in the range 0 to 255, r in the range of 64 to 169 where f rxrf and the ook 2 nd if frequency f if2 are in mhz, and p, s, and r are divider integers where s must be less than (p+1), and r has a value in the range of 64 to 169. an f if2 value of 0.1 mhz is normally used. the val- ues of p, s and r for ook transmit operation on severa l common frequencies are given in table 69 for a 0.1 mhz f if2 . software for determining p, s and r values is provided with the TRC103 development kit. configuration 868.3 mhz 915.0 mhz 955.0 mhz mcfg00 bits 4..3 10 01 10 p 85 121 126 s 63 1 26 r 107 143 143 table 69 6.6 TRC103 data mode se lection and configuration the TRC103 supports three data modes: continuous, buffered and packet. continuous data mode provides the most formatting flexibility, but places the heaviest de mand on host microcontroller resources and requires the most custom firmware development. in contrast, the pa cket data mode unloads the host processor and the appli- cation firmware from handing tasks such as dc-balanc ed data encoding, packet frame assembly and disassem- bly, error detection, packet filtering and fifo buffering . the trade-off for packet data mode is limited flexibility in data formatting parameters such as packet frame desi gn. buffered data mode falls between packet and continu- ous data mode capabilities, providing fifo buffering, bu t allowing considerable flex ibility in the design of the packet frame. packet data mode is generally preferred as it supports the fastest application development time and requires the smallest and least expensive host microcontroller. buffered data mode covers applications that require a specific packet frame design to support features such as multi- hop routing. continuous data mode is reserved for special- ized requirements, such as compatibility with a legacy product. mcfg01 bit 5 and bit 2 select the data mode. setting bit 2 to 1 enables packet mode regardless of the state of bit 5. if bit 2 is set to 0, then buffered mode is selected if bi t 5 is set to 1 and continuous mode is selected if bit 5 is set to 0. the TRC103 configuration details for each data mode are discussed below. 6.6.1 continuous data mode in continuous data mode operation, transmitted data streams are applied to data pin 20, and received data streams are output on pin 20. irq1 pin 22 is usually conf igured to supply a clock signal to the host micro- controller to pace the transmitted and rece ived data steams. the clock signal is generated at the configured bit rate. when transmitting, bits are clocked into pin 20 on the low-to-high clock transitions at pin 22.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 54 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 received bits are valid (clocked out) on pin 20 on low-to-hi gh clock transitions on pin 22. the clock signal is con- trolled by rxcfg12 bit 6. setting this bit to 0 enables bit clocking and setting this bit to 1 disables bit clocking. clocking must be used for fsk transmissions . it is optional for ook transmissions. while clocking is optional for fsk and ook reception, enabling clocking provides additional bit stream filtering and regeneration, even if the clock signal is not used by the microcontroller. to effectively use the data and clock recovery feature, data must be transmitted with a bit rate accuracy of better than 2%, and a 1-0-1-0? training preamble of at least 24 bits must be sent at the begi nning of a transmission. when clocking is enabled, continu- ous mode will optionally support the detection of a start-of-p acket (start) pattern when receiving. the start pattern must be generated by the host microcontroller when trans mitting. start pattern detection is enabled by setting rxcfg12 bit 5 to 1. the length of the start pattern is set by rxcfg12 bits 4..3 as follows: rxcfg12 bits 4..3 pattern length 00 8 bits 01 16 bits 10 24 bits 11 32 bits table 70 the number of allowed bit errors in the start pattern is configured by rxcfg12 bits 2..1 as follows: rxcfg12 bits 2..1 error tolerance 00 none 01 1 bit 10 2 bits 11 3 bits table 71 for most applications, a start pattern length of 24 to 32 bits is recommended with the error tolerance set to none. the start pattern is stored in registers syncfg16 through syncfg19 . received bits flow through a shift register for pattern comparison with the most significant bit of syncfg16 compared to the earliest received bit and the least significant bit of the last register (selected by t he pattern length) compared to the last received bit. pattern detection is usually output on irq0, as discussed below. refer to figure 9 for pattern detection output timing. a well designed pattern should contain approximately the sa me number of 1 and 0 bits to achieve dc-balance, it should include frequent bit transitions, and it should be a pattern that is unlikely to occur in the encoded data fol- lowing it. as shown in figure 19, two interrupt (control) outputs, irq0 and irq1, are provided by the TRC103 to coordinate data flow to and from the host microcontroller. in c ontinuous data mode, one of two signals can be mapped to irq0. this mapping is configured in register irqcfg0d . bits 7..6 select the signal for irq0 in the receive mode. the mapping options for continuous data mode are summarized in table 72, where x denotes a don?t care bit value. note that irq1 always outputs dclk in continuous data mode when clocking is enabled.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 55 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 irqcfg0d bits cfg state irq source 7..6 00, 1x rx 0 start pattern detect 7..6 01 rx 0 rssi_irq 3 x tx 0 none (set to 0) 5..4 xx rx 1 dclk 3 x tx 1 dclk table 72 the motivation for disabling clocking when transmitting or receiving ook is that non-standard bit rates can be used. however, the host microcontroller must handle t he data and clock recovery f unctions. when using continu- ous mode with or without clocking enabled, data should be encoded to provide dc-balance (same number of 1 and 0 bits) and limited run lengths of the same bit value. manchester encoding, 8-to-12 bit symbolizing or scrambling must be applied to the data before transmi tting and removed after receiving to achieve good rf transmission performance. the preamble, start pattern and error checking bits must also be generated by the host microcontroller to establish robust data communications. 6.6.2 buffered data mode in buffered data mode operation, the transmitted and received data bits pass through the spi port in groups of 8 bits to the internal TRC103 fifo. bits flow from the fifo to the modulator for transmission and are loaded into the fifo as data is received. as discussed in sections 3.10 and 3.11, the spi port can address the data fifo or the configuration registers. assert ing a logic low on the nss_data input addresses the fifo, and asserting a logic low on the nss_config addresse s the configuration registers. if both of these inputs are asserted, nss_config will override nss_data. the TRC103 acts as an spi slave and receives clocking from its host microcontroller. spi read/write details are provided in sections 3.10 and 3.11. as shown in figure 19, two inter- rupt (control) outputs, irq0 and irq1, are provided by the TRC103 to coordinate spi data flow to and from the host microcontroller. one to four signals can be selected or mapped to each interrupt output. this mapping is con- figured in register irqcfg0d . bits 7..6 select the signal for irq0 in the receive mode, with irq0 hard coded to nfifoempy in transmit mode. bits 5..4 select the signal for irq1 in the receive mode. bit 3 selects the irq1 sig- nal in transmit mode. the mapping options for buffered data mode are summarized in table 73: irqcfg0d bits cfg state irq source 7..6 00 rx 0 none (set to 0) 7..6 01 rx 0 write_byte (high pulse when received byte written to fifo) 7..6 10 rx 0 nfifoempy (low when fifo is empty) 7..6 11 rx 0 start pattern detect 3 x tx 0 nfifoempy (low when fifo is empty) 5..4 00 rx 1 none (set to 0) 5..4 01 rx 1 fifofull 5..4 10 rx 1 rssi_irq 5..4 11 rx 1 fifo_int_rx 3 0 tx 1 fifofull 3 1 tx 1 tx_stop table 73
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 56 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 in addition, irqcfg0e allows several internal fifo interrupts to be configured. these are summarized in table 74 below: irqcfg0e bits cfg fifo control 7 0 start fifo fill when start pattern detected 7 1 control fifo with bit 6 6 0 stop filling fifo (if bit 7 is 0, this is start pattern detect) 6 1 start filling fifo 5 0 transmitting all pending bits in fifo 5 1 all bits in fifo transmitted 4 0 start transmission when fifo full 4 1 start transmission if nfifoempy = 1 (not empty) 3 0 disable rssi interrupt (bit 2) 3 1 enable rssi interrupt (bit 2) 2 1 rf signal rssi threshold 2 0 rf signal < rssi threshold 1 1 pll not locked 1 0 pll locked 0 1 pll_lock signal disabled (b it 1 above), pin 23 set high 0 0 pll_lock signal enabled table 74 mcfg05 bits 7..6 set the length of the fifo as shown in table 75: mcfg05 bits 7..6 fifo length 00 16 bytes 01 32 bytes 10 48 bytes 11 64 bytes table 75 the integer value of mcfg05 bits 5..0 plus 1 sets the fifo interrupt threshold. when receiving in buffered data mode, fifo_int_rx is triggered when the number of bytes in the fifo is equal to or greater than the threshold. the fifo threshold facilitates sending and receiving me ssages longer than the chosen fifo length, by signaling when additional bytes should be added to the fifo during a packet transmission and retrieved from the fifo dur- ing a packet reception. two addition al interrupts, nfifoempy and fifofu ll provide signaling that a packet transmission is complete or a full packet has been received respectively. the following is a typical buffered data mode operating sc enario. there are many other ways to configure this very flexible data mode. 1. switch to standby mode by setting mcfg00 bits 7..5 to 001. 2. set the fifo to a suitable size for the application in mcfg05 bits 7..6. 3. set the start pattern length in rxcfg12 bits 4..3. 4. load the start pattern in registers syncfg16 up through syncfg19 as required. 5. set irqcfg0e bit 7 to 0. in receive, the fifo will st art filling when a start pattern is detected. 6. set irqcfg0d bit 7..6 to 01. in receive, irq0 will flag each time a byte is ready to be retrieved. 7. set irqcfg0d bit 5..4 to 00. irq1 signaling will not be required in receive mode.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 57 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 8. in transmit mode, irq0 will flag when the fifo is empty. 9. set irqcfg0d bit 3 to 1. irq1 will flag when the last bit starts to be transmitted. 10. load the operating frequency into register set mcfg06 - mcfg08 or mcfg09 - mcfg0b. 11. select the register set to use by setting mcfg00 bit 0. a 0 value selects register set mcfg06 - mcfg08 and a 1 value selects register set mcfg09 - mcfg0b . 12. when ready to transmit, place the TRC103 in synthesizer mode by setting mcfg00 bits 7..5 to 010. mon- itor the TRC103 pin 23 to confirm pll lock. 13. place TRC103 in transmit mode by setting mcfg00 bits 7..5 set to 100. 14. load the message in the fifo through the spi por t. in buffered data mode, the transmitted message must include the 1-0-1-0? training preamble, the st art pattern and the data. a length byte at the begin- ning of the data or a designated end-of-message charac ter is normally used to indicate message length. 15. monitor irq1. it sets when the when the last bit st arts to be transmitted. allow one bit period for the last bit to be transmitted and then switch to standby mode by setting mcfg00 bits 7..5 to 001. 16. to prepare for receive mode, write a 1 to irqcfg0e bit 6. this arms the start pattern detection. 17. switch the TRC103 from standby mo de to synthesizer mode by setting mcfg00 bits 7..5 set to 010. monitor the TRC103 pin 23 to confirm pll lock. 18. switch from synthesizer mode to receive mode by setting mcfg00 bits 7..5 to 011. 19. following a start pattern detection, the fifo will star t filling. note that the preamble and start pattern are not loaded in the receive fifo. 20. as each data byte is loaded into the fifo, irq0 w ill pulse to alert the host mi crocontroller to retrieve the byte. 21. the host microcontroller can use a countdown on t he length byte or detection of the end-of-message byte to determine when all of the message data has been retrieved. 22. as soon as all the message has been retriev ed, switch the TRC103 to standby mode by setting mcfg00 bits 7..5 to 001. 23. from standby mode, enter another tr ansmit cycle as outlined in steps 12 through 15, or enter another re- ceive cycle as outlined in steps 16 through 23. it is possible to transmit messages longer than the fifo in buffered data mode by monitoring the nfifoempy flag and immediately loading additional data bytes. however, messages sent by low power radios such as the tr103 are normally 127 bytes or less to reduce the chanc es of corruption due to noise, fading or interference. 6.6.3 packet data mode the packet data mode is built on top of the buffered data mode, and adds a number of standard and optional features: ? fixed or variable length packet options ? generation of preamble and start pattern (network id) in transmit mode ? dc-balancing of data by scrambling (whitening) or manchester encoding
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 58 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 ? generation of a 16-bit error detection crc ? optional 1-byte node address and/or 1-byte length address ? recognition of start pattern in receive mode ? automatic removal of preamble and start patte rn in receive mode (payload only in fifo) ? flagging of received packets with errors or flagging and discard of packets with errors ? filtering of received packets based on address byte - address match only, address byte plus 0x00 broadcast address or address byte pl us 0x00 and 0xff broadcast addresses ? new irq0 and irq1 mapping options the spi interface is used with packet data mode as with buffered data mode. irq0 and irq1 mapping is config- ured in register irqcfg0d . bits 7..6 select the signal for irq0 in the receive mode. in transmit mode, irq0 mapping is set by irqcfg0e bit 4. irqcfg0d bits 5..4 select the signal for irq1 in the receive mode. bit 3 se- lects the irq1 signal in transmit mode. the mapping options for packet data mode are summarized in table 76 below: irqcfg0d bits cfg state irq source 7..6 00 rx 0 data_rdy (crc ok) 7..6 01 rx 0 write_byte (high pulse when received byte written to fifo) 7..6 10 rx 0 nfifoempy (low when fifo is empty) 7..6 11 rx 0 start pattern detect (addrs_cmp = 0) or node address match (addrs_cmp = 1) 3 x tx 0 fifo_int_tx (fifo_thres) if start_full = 0 3 x tx 0 nfifoempy if start_full = 1 5..4 00 rx 1 crc_ok 5..4 01 rx 1 fifofull 5..4 10 rx 1 rssi_irq 5..4 11 rx 1 fifo_int_rx (fifo_thres) 3 0 tx 1 fifofull 3 1 tx 1 tx_stop table 76 in addition, irqcfg0e allows several internal fifo interrupts to be configured. these are summarized in table 77 below: irqcfg0e bits cfg fifo control 7 0 start fifo fill when start pattern detected 7 1 control fifo with bit 6 6 0 stop filling fifo (if bit 7 is 0, this is start pattern detect) 6 1 start filling fifo 5 0 transmitting all pending bits in fifo 5 1 all bits in fifo transmitted 4 0 start transmission when fifo at or above threshold0 4 1 start transmission if nfifoempy = 1 (not empty) 3 0 disable rssi interrupt (bit 2) 3 1 enable rssi interrupt (bit 2) 2 1 rf signal rssi threshold 2 0 rf signal < rssi threshold table 77
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 59 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 mcfg05 bits 7..6 set the length of the fifo as shown in table 78. the length of the fifo must be equal to or greater than the packet payload length set in pktcfg1c , as discussed below. mcfg05 bits 7..6 fifo length 00 16 bytes 01 32 bytes 10 48 bytes 11 64 bytes table 78 the integer value of mcfg05 bits 5..0 + 1 sets the fifo interrupt threshold. when receiving in packet data mode, fifo_int_rx is triggered when the number of bytes in the fifo is equal to or greater than the threshold. fifo_int_tx is triggered when the number of bytes in the fifo is equal to or less than the threshold value. two additional interrupts, nfifoempy and fi fofull provide signaling that a packe t transmission is complete or a full packet has been received respectively. packet data mode formats are discussed in section 3.9. packet data mode options are configured in registers pktcfg1c through pktcfg1f. setting pktcfg1c bit 7 to 1 selects manchester encoding/decoding. man- chester encoding provides excellent dc-balance and other characteristics that support robust communications, but effectively doubles the number of bits needed to trans mit the packet payload. scrambling provides adequate dc-balance in many applications without doubling the numbe r of bits in the payload. it is not necessary to enable both manchester encoding and scrambling. pktcfg1c bits 6..0 configure the payload size (not including the preamble and start pattern) in fixed format and maximu m allowed length byte value in variable length and extend- ed variable length formats. in a variable length format, a re ceived packet with a length byte value greater than the maximum allowed is discarded. pktcfg1d bits 7..0 hold t he node address byte used to identify a specific radio in a network. pktcfg1e bit 7 configures the basic packet format. setting th is bit to 0 selects the fixed-length format, and set- ting this bit to 1 selects the variable length format. pktcfg1e bits 6..5 set the preamble length: pktcfg1e bits 6..5 preamble length 00 1 byte 01 2 bytes 10 3 bytes 11 4 bytes table 79 for most applications a preamble length of three or four bytes is recommended. pktcfg1e bit 4 controls dc- balanced scrambling. setting this bit to 1 enables scrambling. pktcfg1e bit 3 controls crc calculations. setting his bit to 1 enables crc calculations. pktcfg1e bits 2..1 configure node address filtering: pktcfg1e bits 2..1 node address filtering 00 no filtering 01 only node address accepted 10 node address and 0x00 accepted 11 node address, 0x00 and 0xff accepted table 80
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 60 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 pktcfg1e bit 0 is the result of the last crc calculation. this bit is 1 when the crc indicates no errors. pktcfg1f bit 7 controls crc packet filtering. if this bit is se t to 0, the fifo is cleared automatically if the crc calculation on a received packet indicates an error. if se t to 1, the fifo data is preserved when the crc calcula- tion shows an error. pktcfg1f bit 6 allows the fifo to be written to or read when the TRC103 is in standby mode. setting this bit to 0 allows the fifo to be writ ten and setting this bit to 1 allows it to be read. the following is a typical packet data mode operating sce nario. there are many other ways to configure this flexible data mode. 1. switch to standby mode by setting mcfg00 bits 7..5 to 001. 2. set the fifo to a suitable size for the application in mcfg05 bits 7..6. 3. in pktcfg1c set bit 7 to 0 to disable manchester encodi ng, and set the value in bits 6..0 to match the fifo size -1. 4. load the chosen node address into pktcfg1d . 5. in pktcfg1e set bit 7 to 1 to for variable length packets. 6. set the preamble length in pktcfg1e bits 6..5. 7. set bit 4 in pktcfg1e to 1 to enable dc-balanced scrambling. 8. set bits 2..1 in pktcfg1e to 10 to accept packets to this node address and 0x00 broadcasts. 9. set bit 3 in pktcfg1e to 1 to enable crc calculations. 10. in pktcfg1f set bit 7 to 0 to enable fifo clear on crc error. 11. set the start pattern length in rxcfg12 bits 4..3. 12. load the start pattern in registers syncfg16 up through syncfg19 as required. 13. set irqcfg0e bit 7 to 0. in receive, the fifo will st art filling when a start pattern is detected. 14. set irqcfg0d bit 7..6 to 00. in receive, irq0 will flag that a packet has been received with a good crc calculation and is ready to retrieve. 15. set irqcfg0e bit 4 to 1. in transmit, irq0 will clear to 0 when the fifo is empty (optional). 16. set irqcfg0d bit 5..4 to 00. in receive, irq1 will signal the crc is ok (optional). 17. set irqcfg0d bit 3 to 1. irq1 will flag when the last bit starts to be transmitted. 18. load the operating frequency into register set mcfg06 - mcfg08 or mcfg09 - mcfg0b. 19. select the register set to use by setting mcfg00 bit 0. a 0 value selects register set mcfg06 - mcfg08 and a 1 value selects register set mcfg09 - mcfg0b . 20. when ready to transmit, set bit 6 to 0 in pktcfg1f to enable fifo write in standby mode. 21. load the fifo with the packet to be transmitted through the spi port. 22. place the TRC103 in synthesizer mode by setting mcfg00 bits 7..5 set to 010. monitor the TRC103 pin 23 to confirm pll lock.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 61 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 23. place TRC103 in transmit mode by setting mcfg00 bits 7..5 set to 100. monitor irq1. it sets when the when the last bit starts to be transmitted. allow one bit period for the last bit to be transmitted and then switch to standby mode by setting mcfg00 bits 7..5 to 001. 24. when ready to receive, place t he TRC103 in synthesizer mode by setting mcfg00 bits 7..5 set to 010. monitor the TRC103 pin 23 to confirm pll lock. 25. switch from synthesizer mode to receive mode by setting mcfg00 bits 7..5 to 011. 26. monitor irq0. when an error free packet is re ceived addressed to this node, irq0 will set. 27. switch the TRC103 to standby mode by setting mcfg00 bits 7..5 to 001. 28. set bit 6 to 1 in pktcfg1f to enable fifo read in standby mode. 29. retrieve the received data from the fifo through the spi port. 30. from standby mode, enter another transmit cycle as outlined in steps 20 through 23, or enter another receive cycle as outlined in steps 24 through 30. 6.7 battery power management configuration values battery life can be greatly extended in TRC103 applications where transmissions from field nodes are infrequent, or network communications can be concentrated in periodic ti me slots. for example, field nodes in many wireless alarm systems report operational st atus a few times a day, and can otherwise sleep unless an alarm condition occurs. sensor networks that monitor parameters that c hange relatively slowly, such as air and soil temperature in agricultural settings, only need to transmit updates a few times an hour. at room temperature the TRC103 draws a maximum of 1 a in sleep mode, with a typical value of 100 na. to achieve minimum sleep mode current, nss_config (pin 14), sdi (pin 17) and sck (pin 18) must be held logic low, while nss_data (pin 15) must be held logic high. also, the external connection to sdo (pin 16) must be configured as high impedance (tri-state or input). the TRC103 can go from sleep mode through standby mode and synthesizer mode to transmit (or receive) mode in le ss than 6 ms. at a data rate of 33.33 kb/s, a 32 byte packet with a 4 byte preamble and a 4 byte start pattern takes about 10 ms to transmit. assume that the TRC103 then switches to receive mode for 1 second to listen for a response and returns to sleep. on the basis of reporting every six hours, the on to sleep duty cycle is about 1:21,259, greatly extending batte ry life over continuous transmit-receive or even standby operation. rfm provides an excel spreadsheet, battery_ life_ calculator.xls, in the application notes section of www.rfm.com to support battery life for various operating scenarios. the required timing accuracy for the microcontrollers in a sleep-cycled application depends on several things: ? the required ?time-stamp? accuracy of data reported by sleeping field nodes. r-c sleep mode timers built into many microcontrollers have a tolerance of 20% or more. where more accurate time stamping is re- quired, many microcontrollers can r un on a watch crystal during sleep and achieve time stamp accuracies better than one second per 24 hours. ? if the base station and any routing nodes present in a network must sleep cycle in addition to the field nodes, watch crystal control will usually be needed to ke ep all nodes accurately synchronized to the ac- tive time slots. ? if the base station and any routing nodes present in a network can operate continuously (ac powered, solar charged batteries, etc.) and a loose time stamp ac curacy is ok, the microcontrollers in sleeping field nodes can usually operated from inte rnal low-accuracy r-c timers.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 62 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 note: many host microcontrollers cannot be operated from the TRC103 buffered clock output if sleep cycling is planned. in sleep mode, the TRC103 buffered clock output is disabled, which will disable the microcontroller un- less it is capable of automatically switching to an in ternal clock source when external clocking is lost. TRC103 sleep related mode switching is configured in mcfg00 bits 7..5 as follows: mcfg bits 7..5 operating mode 000 sleep mode - all oscillators off 001 standby - crystal oscillator only on 010 synthesizer - crystal and pll on 011 receive mode 100 transmit mode table 81 when switching from sleep mode to standby, the crystal os cillator will be active in no more than 5 ms. switching from standby to synthesizer mode, the pll will lock in le ss than 0.5 ms. pll lock can be monitored on pin 23 of the TRC103. the radio can then be switched to either tran smit or receive mode. when switching from any other mode back to sleep, the TRC103 will drop to its sleep mode current in less than 1 ms.
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 63 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 7.0 package dimensions and ty pical pcb footprint - qfn-32       # " h  i   " ! c c = =             !    ) . 3 +  7 ( .  * & / , & 0 % 8  ( % + . 3 -  3 & , % + , d = - ( * +  . , + . . , & 0 % 8  7 ( .  ( 2 2 & ) 8 + ,  1 . 2 : d figure 25 dimension millimeters inches minimum nominal maximum minimum nominal maximum a 4.95 5.00 5.05 0.195 0.197 0.199 b 4.95 5.00 5.05 0.195 0.197 0.199 c 0.00 0.03 0.05 0.000 0.001 0.002 d 0.70 0.75 0.80 0.028 0.030 0.031 e 3.50 0.138 f 0.50 0.020 g 0.20 0.25 0.30 0.008 0.010 0.012 h 3.50 0.138 i 0.30 0.40 0.50 0.012 0.016 0.020 j 3.00 3.10 3.20 0.118 0.122 0.126 k 3.00 3.10 3.20 0.118 0.122 0.126 l 5.90 0.232 m 0.90 0.035 n 4.10 0.161 o 4.10 0.161 p 5.90 0.232 q 0.30 0.012 r 0.50 0.020 s 3.30 0.130 t 3.30 0.130 u 0.90 0.035 v 0.90 0.035 table 82
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 64 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 8.0 tape and reel dimensions 7 5   # # 2  #    !    2 8  6  3  3 ! 5 !
   6  3 9  #    !    2 8     3 9  #    !  
   
   +     figure 26 dimension mm inches minimum nominal maximum minimum nominal maximum a o 5.05 5.25 5.45 0.199 0.207 0.215 b o 5.05 5.25 5.45 0.199 0.207 0.215 d - 330.2 - - 13.0 - k o 1.0 1.1 1.2 0.039 0.043 0.047 p 7.9 8.0 8.1 0.311 0.315 0.319 t - 12.4 - - 0.488 - w 11.7 12.0 12.3 0.461 0.472 0.484 table 83
www.rfm.com e-mail: info@rfm.com technical support +1.800.704.6079 page 65 of 65 ?2009-2010 by rf monolithics, inc. TRC103 - 10/16/12 9.0 solder reflow profile TRC103 lead free ir reflow profile (mlp/tqfn package) figure 27 ventilator: off speed: 17 cm/min zones upper lower #1 #2 #3 #4 380 240 320 380 380 240 320 380 table 84 name - probe # max. temp. reached, t = 0 s to 449 s temp reached at time above 200 oc reached at, duration time above 217 oc reached at, duration time above 260 oc reached at, duration max slope, t < 200 oc slope, reached at, duration max slope, t < 200 oc slope, reached at, duration 2749-3-1 curve 1 258 356.83 276.41 111.99 314.53 69.70 -- -- 5.00 3 8 1 -11.00 409 1 max. slope, t = 200 oc to 217 oc max. slope, t = 217 oc to 260 oc max. slope, t > 260 oc slope, reached at, duration slope, reached at, duration slope, reached at, duration slope, reached at, duration slope, reached at, duration slope, reached at, duration 1.50 315 2 -5.00 387 1 1.50 315 2 -5.00 379 1 -- -- -- -- -- -- table 85


▲Up To Search▲   

 
Price & Availability of TRC103

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X